<!DOCTYPE html>
<html lang="" xml:lang="">
<head>

  <meta charset="utf-8" />
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  <title>第 8 章 光响应曲线的拟合 | 使用 R 语言分析 LI-6400 和 LI-6800 光合仪的数据</title>
  <meta name="description" content="使用 R 语言分析 LI-6400XT 与 LI-6800 数据" />
  <meta name="generator" content="bookdown 0.24 and GitBook 2.6.7" />

  <meta property="og:title" content="第 8 章 光响应曲线的拟合 | 使用 R 语言分析 LI-6400 和 LI-6800 光合仪的数据" />
  <meta property="og:type" content="book" />
  
  <meta property="og:image" content="/images/coverpage.png" />
  <meta property="og:description" content="使用 R 语言分析 LI-6400XT 与 LI-6800 数据" />
  <meta name="github-repo" content="zhujiedong/photoanalysis" />

  <meta name="twitter:card" content="summary" />
  <meta name="twitter:title" content="第 8 章 光响应曲线的拟合 | 使用 R 语言分析 LI-6400 和 LI-6800 光合仪的数据" />
  
  <meta name="twitter:description" content="使用 R 语言分析 LI-6400XT 与 LI-6800 数据" />
  <meta name="twitter:image" content="/images/coverpage.png" />

<meta name="author" content="祝介东    北京力高泰科技有限公司" />


<meta name="date" content="2021-11-12" />

  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <meta name="apple-mobile-web-app-capable" content="yes" />
  <meta name="apple-mobile-web-app-status-bar-style" content="black" />
  
  
<link rel="prev" href="rhtovpd.html"/>
<link rel="next" href="start_con.html"/>
<script src="libs/header-attrs-2.11/header-attrs.js"></script>
<script src="libs/jquery-3.6.0/jquery-3.6.0.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/fuse.js@6.4.6/dist/fuse.min.js"></script>
<link href="libs/gitbook-2.6.7/css/style.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-table.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-bookdown.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-highlight.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-search.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-fontsettings.css" rel="stylesheet" />
<link href="libs/gitbook-2.6.7/css/plugin-clipboard.css" rel="stylesheet" />








<link href="libs/anchor-sections-1.0.1/anchor-sections.css" rel="stylesheet" />
<script src="libs/anchor-sections-1.0.1/anchor-sections.js"></script>


<style type="text/css">
pre > code.sourceCode { white-space: pre; position: relative; }
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
pre > code.sourceCode > span:empty { height: 1.2em; }
.sourceCode { overflow: visible; }
code.sourceCode > span { color: inherit; text-decoration: inherit; }
pre.sourceCode { margin: 0; }
@media screen {
div.sourceCode { overflow: auto; }
}
@media print {
pre > code.sourceCode { white-space: pre-wrap; }
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
}
pre.numberSource code
  { counter-reset: source-line 0; }
pre.numberSource code > span
  { position: relative; left: -4em; counter-increment: source-line; }
pre.numberSource code > span > a:first-child::before
  { content: counter(source-line);
    position: relative; left: -1em; text-align: right; vertical-align: baseline;
    border: none; display: inline-block;
    -webkit-touch-callout: none; -webkit-user-select: none;
    -khtml-user-select: none; -moz-user-select: none;
    -ms-user-select: none; user-select: none;
    padding: 0 4px; width: 4em;
    color: #aaaaaa;
  }
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa;  padding-left: 4px; }
div.sourceCode
  {   }
@media screen {
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
}
code span.al { color: #ff0000; font-weight: bold; } /* Alert */
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
code span.at { color: #7d9029; } /* Attribute */
code span.bn { color: #40a070; } /* BaseN */
code span.bu { } /* BuiltIn */
code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
code span.ch { color: #4070a0; } /* Char */
code span.cn { color: #880000; } /* Constant */
code span.co { color: #60a0b0; font-style: italic; } /* Comment */
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
code span.do { color: #ba2121; font-style: italic; } /* Documentation */
code span.dt { color: #902000; } /* DataType */
code span.dv { color: #40a070; } /* DecVal */
code span.er { color: #ff0000; font-weight: bold; } /* Error */
code span.ex { } /* Extension */
code span.fl { color: #40a070; } /* Float */
code span.fu { color: #06287e; } /* Function */
code span.im { } /* Import */
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
code span.kw { color: #007020; font-weight: bold; } /* Keyword */
code span.op { color: #666666; } /* Operator */
code span.ot { color: #007020; } /* Other */
code span.pp { color: #bc7a00; } /* Preprocessor */
code span.sc { color: #4070a0; } /* SpecialChar */
code span.ss { color: #bb6688; } /* SpecialString */
code span.st { color: #4070a0; } /* String */
code span.va { color: #19177c; } /* Variable */
code span.vs { color: #4070a0; } /* VerbatimString */
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
</style>

<style type="text/css">
/* Used with Pandoc 2.11+ new --citeproc when CSL is used */
div.csl-bib-body { }
div.csl-entry {
  clear: both;
}
.hanging div.csl-entry {
  margin-left:2em;
  text-indent:-2em;
}
div.csl-left-margin {
  min-width:2em;
  float:left;
}
div.csl-right-inline {
  margin-left:2em;
  padding-left:1em;
}
div.csl-indent {
  margin-left: 2em;
}
</style>

<link rel="stylesheet" href="css/style.css" type="text/css" />
</head>

<body>



  <div class="book without-animation with-summary font-size-2 font-family-1" data-basepath=".">

    <div class="book-summary">
      <nav role="navigation">

<ul class="summary">
<li><a href="./">R 软件与光合数据分析</a></li>

<li class="divider"></li>
<li class="chapter" data-level="" data-path="index.html"><a href="index.html"><i class="fa fa-check"></i>欢迎</a></li>
<li class="chapter" data-level="" data-path="frontmatter.html"><a href="frontmatter.html"><i class="fa fa-check"></i>前言</a></li>
<li class="chapter" data-level="" data-path="copyright.html"><a href="copyright.html"><i class="fa fa-check"></i>版权</a></li>
<li class="chapter" data-level="1" data-path="intro.html"><a href="intro.html"><i class="fa fa-check"></i><b>1</b> R 软件与 Rstudio</a>
<ul>
<li class="chapter" data-level="1.1" data-path="intro.html"><a href="intro.html#rsoft"><i class="fa fa-check"></i><b>1.1</b> R 软件</a></li>
<li class="chapter" data-level="1.2" data-path="intro.html"><a href="intro.html#rstudiosoft"><i class="fa fa-check"></i><b>1.2</b> Rstudio</a></li>
</ul></li>
<li class="chapter" data-level="2" data-path="batch_question.html"><a href="batch_question.html"><i class="fa fa-check"></i><b>2</b> 批量处理光合测定数据</a>
<ul>
<li class="chapter" data-level="2.1" data-path="batch_question.html"><a href="batch_question.html#install_readphoto"><i class="fa fa-check"></i><b>2.1</b> 安装</a></li>
<li class="chapter" data-level="2.2" data-path="batch_question.html"><a href="batch_question.html#batch64"><i class="fa fa-check"></i><b>2.2</b> LI-6400 数据处理</a>
<ul>
<li class="chapter" data-level="2.2.1" data-path="batch_question.html"><a href="batch_question.html#li-6400-数据的整合6400combine"><i class="fa fa-check"></i><b>2.2.1</b> LI-6400 数据的整合{#6400combine}</a></li>
<li class="chapter" data-level="2.2.2" data-path="batch_question.html"><a href="batch_question.html#recompute6400"><i class="fa fa-check"></i><b>2.2.2</b> LI-6400 数据重计算</a></li>
</ul></li>
<li class="chapter" data-level="2.3" data-path="batch_question.html"><a href="batch_question.html#li-6800-数据的处理-6800data"><i class="fa fa-check"></i><b>2.3</b> LI-6800 数据的处理 {#6800data}</a>
<ul>
<li class="chapter" data-level="2.3.1" data-path="batch_question.html"><a href="batch_question.html#r-下-excel-格式读取的重计算-6800xlconnect"><i class="fa fa-check"></i><b>2.3.1</b> R 下 Excel 格式读取的重计算 {##6800xlconnect}</a></li>
<li class="chapter" data-level="2.3.2" data-path="batch_question.html"><a href="batch_question.html#python"><i class="fa fa-check"></i><b>2.3.2</b> 使用 Python 来处理</a></li>
<li class="chapter" data-level="2.3.3" data-path="batch_question.html"><a href="batch_question.html#python-r-batch"><i class="fa fa-check"></i><b>2.3.3</b> 批量处理 csv 文件</a></li>
</ul></li>
</ul></li>
<li class="chapter" data-level="3" data-path="response_fit.html"><a href="response_fit.html"><i class="fa fa-check"></i><b>3</b> CO<sub>2</sub> 响应曲线的拟合</a>
<ul>
<li class="chapter" data-level="3.1" data-path="response_fit.html"><a href="response_fit.html#fvcb_mod"><i class="fa fa-check"></i><b>3.1</b> FvCB 模型</a></li>
<li class="chapter" data-level="3.2" data-path="response_fit.html"><a href="response_fit.html#co2_note"><i class="fa fa-check"></i><b>3.2</b> CO<sub>2</sub> 响应曲线测量的注意事项</a>
<ul>
<li class="chapter" data-level="3.2.1" data-path="response_fit.html"><a href="response_fit.html#model_3"><i class="fa fa-check"></i><b>3.2.1</b> 分段性</a></li>
<li class="chapter" data-level="3.2.2" data-path="response_fit.html"><a href="response_fit.html#note_detail"><i class="fa fa-check"></i><b>3.2.2</b> 测量注意事项</a></li>
</ul></li>
<li class="chapter" data-level="3.3" data-path="response_fit.html"><a href="response_fit.html#plantecophys"><i class="fa fa-check"></i><b>3.3</b> <code>plantecophys</code> 软件包</a></li>
<li class="chapter" data-level="3.4" data-path="response_fit.html"><a href="response_fit.html#fit6400"><i class="fa fa-check"></i><b>3.4</b> LI-6400XT CO<sub>2</sub> 响应曲线的拟合</a>
<ul>
<li class="chapter" data-level="3.4.1" data-path="response_fit.html"><a href="response_fit.html#fitaci_intro"><i class="fa fa-check"></i><b>3.4.1</b> fitaci 函数介绍</a></li>
</ul></li>
<li class="chapter" data-level="3.5" data-path="response_fit.html"><a href="response_fit.html#plantecophy_use"><i class="fa fa-check"></i><b>3.5</b> 使用 <code>plantecophys</code> 拟合 LI-6400XT CO<sub>2</sub> 响应曲线数据</a>
<ul>
<li class="chapter" data-level="3.5.1" data-path="response_fit.html"><a href="response_fit.html#data6400"><i class="fa fa-check"></i><b>3.5.1</b> 数据的前处理</a></li>
<li class="chapter" data-level="3.5.2" data-path="response_fit.html"><a href="response_fit.html#fitaci-p"><i class="fa fa-check"></i><b>3.5.2</b> 使用示例</a></li>
<li class="chapter" data-level="3.5.3" data-path="response_fit.html"><a href="response_fit.html#onpoint_fit"><i class="fa fa-check"></i><b>3.5.3</b> 使用 ‘onepoint’ 单独计算 V<sub>cmax</sub> 和 J<sub>max</sub></a></li>
<li class="chapter" data-level="3.5.4" data-path="response_fit.html"><a href="response_fit.html#multi_curve"><i class="fa fa-check"></i><b>3.5.4</b> 多条 CO<sub>2</sub> 响应曲线的拟合</a></li>
<li class="chapter" data-level="3.5.5" data-path="response_fit.html"><a href="response_fit.html#transition"><i class="fa fa-check"></i><b>3.5.5</b> <code>findCiTransition</code> 函数</a></li>
</ul></li>
<li class="chapter" data-level="3.6" data-path="response_fit.html"><a href="response_fit.html#c4"><i class="fa fa-check"></i><b>3.6</b> C4 植物光合</a>
<ul>
<li class="chapter" data-level="3.6.1" data-path="response_fit.html"><a href="response_fit.html#c4_sim"><i class="fa fa-check"></i><b>3.6.1</b> C4 植物光合速率的计算</a></li>
</ul></li>
</ul></li>
<li class="chapter" data-level="4" data-path="stomotal_sim.html"><a href="stomotal_sim.html"><i class="fa fa-check"></i><b>4</b> 气孔导度模型的拟合</a>
<ul>
<li class="chapter" data-level="4.1" data-path="stomotal_sim.html"><a href="stomotal_sim.html#ballberry"><i class="fa fa-check"></i><b>4.1</b> BallBerry 模型</a></li>
<li class="chapter" data-level="4.2" data-path="stomotal_sim.html"><a href="stomotal_sim.html#bbleuning"><i class="fa fa-check"></i><b>4.2</b> BBLeuning 模型</a></li>
<li class="chapter" data-level="4.3" data-path="stomotal_sim.html"><a href="stomotal_sim.html#bboptifull"><i class="fa fa-check"></i><b>4.3</b> BBOptiFull 模型</a></li>
<li class="chapter" data-level="4.4" data-path="stomotal_sim.html"><a href="stomotal_sim.html#fitbb-p"><i class="fa fa-check"></i><b>4.4</b> <code>fitBB</code> 函数</a></li>
<li class="chapter" data-level="4.5" data-path="stomotal_sim.html"><a href="stomotal_sim.html#fitbbs"><i class="fa fa-check"></i><b>4.5</b> <code>fitBBs</code> 函数</a></li>
</ul></li>
<li class="chapter" data-level="5" data-path="stomotal_couple.html"><a href="stomotal_couple.html"><i class="fa fa-check"></i><b>5</b> 光合最优气孔导度耦合模型</a>
<ul>
<li class="chapter" data-level="5.1" data-path="stomotal_couple.html"><a href="stomotal_couple.html#farao"><i class="fa fa-check"></i><b>5.1</b> <code>FARAO</code> 函数</a></li>
</ul></li>
<li class="chapter" data-level="6" data-path="photo_stomo.html"><a href="photo_stomo.html"><i class="fa fa-check"></i><b>6</b> 光合气孔导度耦合模型</a>
<ul>
<li class="chapter" data-level="6.1" data-path="photo_stomo.html"><a href="photo_stomo.html#photosyn"><i class="fa fa-check"></i><b>6.1</b> <code>Photosyn</code> 函数</a>
<ul>
<li class="chapter" data-level="6.1.1" data-path="photo_stomo.html"><a href="photo_stomo.html#photo_exam"><i class="fa fa-check"></i><b>6.1.1</b> <code>Photosyn</code> 使用举例</a></li>
</ul></li>
<li class="chapter" data-level="6.2" data-path="photo_stomo.html"><a href="photo_stomo.html#photsyneb"><i class="fa fa-check"></i><b>6.2</b> <code>PhotosynEB</code> 函数</a></li>
<li class="chapter" data-level="6.3" data-path="photo_stomo.html"><a href="photo_stomo.html#photosyntuzet"><i class="fa fa-check"></i><b>6.3</b> <code>PhotosynTuzet</code> 函数</a>
<ul>
<li class="chapter" data-level="6.3.1" data-path="photo_stomo.html"><a href="photo_stomo.html#photosyntuzet_para"><i class="fa fa-check"></i><b>6.3.1</b> <code>PhotosynTuzet</code> 的参数</a></li>
</ul></li>
</ul></li>
<li class="chapter" data-level="7" data-path="rhtovpd.html"><a href="rhtovpd.html"><i class="fa fa-check"></i><b>7</b> RHtoVPD 函数</a></li>
<li class="chapter" data-level="8" data-path="lrc_fit.html"><a href="lrc_fit.html"><i class="fa fa-check"></i><b>8</b> 光响应曲线的拟合</a>
<ul>
<li class="chapter" data-level="8.1" data-path="lrc_fit.html"><a href="lrc_fit.html#rec_mod"><i class="fa fa-check"></i><b>8.1</b> 直角双曲线模型</a>
<ul>
<li class="chapter" data-level="8.1.1" data-path="lrc_fit.html"><a href="lrc_fit.html#rec_fit"><i class="fa fa-check"></i><b>8.1.1</b> 直角双曲线模型的实现</a></li>
</ul></li>
<li class="chapter" data-level="8.2" data-path="lrc_fit.html"><a href="lrc_fit.html#nonrec-mod"><i class="fa fa-check"></i><b>8.2</b> 非直角双曲线模型</a>
<ul>
<li class="chapter" data-level="8.2.1" data-path="lrc_fit.html"><a href="lrc_fit.html#nonrec_mode_exam"><i class="fa fa-check"></i><b>8.2.1</b> 非直角双曲线模型的实现</a></li>
</ul></li>
<li class="chapter" data-level="8.3" data-path="lrc_fit.html"><a href="lrc_fit.html#lrc_exp"><i class="fa fa-check"></i><b>8.3</b> 指数模型</a>
<ul>
<li class="chapter" data-level="8.3.1" data-path="lrc_fit.html"><a href="lrc_fit.html#lrc_exp_exam"><i class="fa fa-check"></i><b>8.3.1</b> 指数模型的实现</a></li>
</ul></li>
<li class="chapter" data-level="8.4" data-path="lrc_fit.html"><a href="lrc_fit.html#rev_rec"><i class="fa fa-check"></i><b>8.4</b> 直角双曲线的修正模型</a>
<ul>
<li class="chapter" data-level="8.4.1" data-path="lrc_fit.html"><a href="lrc_fit.html#rev_rec_exam"><i class="fa fa-check"></i><b>8.4.1</b> 直角双曲线修正模型的实现</a></li>
</ul></li>
</ul></li>
<li class="chapter" data-level="9" data-path="start_con.html"><a href="start_con.html"><i class="fa fa-check"></i><b>9</b> 关于非线性拟合的初始值</a>
<ul>
<li class="chapter" data-level="9.1" data-path="start_con.html"><a href="start_con.html#nlslm"><i class="fa fa-check"></i><b>9.1</b> nlsLM 解决方案</a></li>
<li class="chapter" data-level="9.2" data-path="start_con.html"><a href="start_con.html#plot_comp"><i class="fa fa-check"></i><b>9.2</b> 作图比对法</a>
<ul>
<li class="chapter" data-level="9.2.1" data-path="start_con.html"><a href="start_con.html#plot_exam"><i class="fa fa-check"></i><b>9.2.1</b> 实现过程</a></li>
<li class="chapter" data-level="9.2.2" data-path="start_con.html"><a href="start_con.html#show_demo"><i class="fa fa-check"></i><b>9.2.2</b> 直观展示</a></li>
</ul></li>
<li class="chapter" data-level="9.3" data-path="start_con.html"><a href="start_con.html#mult_try"><i class="fa fa-check"></i><b>9.3</b> 自动多次尝试法</a></li>
<li class="chapter" data-level="9.4" data-path="start_con.html"><a href="start_con.html#sum_start"><i class="fa fa-check"></i><b>9.4</b> 小结</a></li>
</ul></li>
<li class="chapter" data-level="10" data-path="anay_6800.html"><a href="anay_6800.html"><i class="fa fa-check"></i><b>10</b> LI-6800 的数据分析</a>
<ul>
<li class="chapter" data-level="10.1" data-path="anay_6800.html"><a href="anay_6800.html#data6800"><i class="fa fa-check"></i><b>10.1</b> 数据格式</a></li>
<li class="chapter" data-level="10.2" data-path="anay_6800.html"><a href="anay_6800.html#dif"><i class="fa fa-check"></i><b>10.2</b> LI-6800 与 LI-6400 使用时的差别</a></li>
<li class="chapter" data-level="10.3" data-path="anay_6800.html"><a href="anay_6800.html#notice"><i class="fa fa-check"></i><b>10.3</b> 光响应曲线注意事项</a></li>
<li class="chapter" data-level="10.4" data-path="anay_6800.html"><a href="anay_6800.html#other_light_response"><i class="fa fa-check"></i><b>10.4</b> 其他软件包的光响应曲线</a></li>
<li class="chapter" data-level="10.5" data-path="anay_6800.html"><a href="anay_6800.html#racir68"><i class="fa fa-check"></i><b>10.5</b> LI-6800 RACiR的测量与拟合</a></li>
<li class="chapter" data-level="10.6" data-path="anay_6800.html"><a href="anay_6800.html#racir-conifer"><i class="fa fa-check"></i><b>10.6</b> LI-6800 RACiR簇状叶的测量与拟合</a></li>
<li class="chapter" data-level="10.7" data-path="anay_6800.html"><a href="anay_6800.html#multi1"><i class="fa fa-check"></i><b>10.7</b> 多个速率的 RACiR 曲线研究</a>
<ul>
<li class="chapter" data-level="10.7.1" data-path="anay_6800.html"><a href="anay_6800.html#multi2"><i class="fa fa-check"></i><b>10.7.1</b> 光呼吸滞后模型</a></li>
<li class="chapter" data-level="10.7.2" data-path="anay_6800.html"><a href="anay_6800.html#code-photoresp"><i class="fa fa-check"></i><b>10.7.2</b> 光呼吸滞后性代码</a></li>
<li class="chapter" data-level="10.7.3" data-path="anay_6800.html"><a href="anay_6800.html#multi4"><i class="fa fa-check"></i><b>10.7.3</b> 数据的构造</a></li>
<li class="chapter" data-level="10.7.4" data-path="anay_6800.html"><a href="anay_6800.html#multi5"><i class="fa fa-check"></i><b>10.7.4</b> 光呼吸滞后性作图</a></li>
<li class="chapter" data-level="10.7.5" data-path="anay_6800.html"><a href="anay_6800.html#multi6"><i class="fa fa-check"></i><b>10.7.5</b> 补偿点计算</a></li>
<li class="chapter" data-level="10.7.6" data-path="anay_6800.html"><a href="anay_6800.html#multi7"><i class="fa fa-check"></i><b>10.7.6</b> 无光呼吸酶失活模块</a></li>
<li class="chapter" data-level="10.7.7" data-path="anay_6800.html"><a href="anay_6800.html#multi9"><i class="fa fa-check"></i><b>10.7.7</b> 酶失活作图</a></li>
<li class="chapter" data-level="10.7.8" data-path="anay_6800.html"><a href="anay_6800.html#multi10"><i class="fa fa-check"></i><b>10.7.8</b> 不同失活程度下补偿点计算</a></li>
</ul></li>
<li class="chapter" data-level="10.8" data-path="anay_6800.html"><a href="anay_6800.html#multi11"><i class="fa fa-check"></i><b>10.8</b> 时间延迟的扩散限制</a>
<ul>
<li class="chapter" data-level="10.8.1" data-path="anay_6800.html"><a href="anay_6800.html#multi12"><i class="fa fa-check"></i><b>10.8.1</b> 扩散限制滞后性</a></li>
</ul></li>
<li class="chapter" data-level="10.9" data-path="anay_6800.html"><a href="anay_6800.html#multi13"><i class="fa fa-check"></i><b>10.9</b> 扩散限制作图</a>
<ul>
<li class="chapter" data-level="10.9.1" data-path="anay_6800.html"><a href="anay_6800.html#multi14"><i class="fa fa-check"></i><b>10.9.1</b> 补偿点的计算</a></li>
<li class="chapter" data-level="10.9.2" data-path="anay_6800.html"><a href="anay_6800.html#multi15"><i class="fa fa-check"></i><b>10.9.2</b> 所有图形代码</a></li>
</ul></li>
<li class="chapter" data-level="10.10" data-path="anay_6800.html"><a href="anay_6800.html#fluro68"><i class="fa fa-check"></i><b>10.10</b> LI-6800 荧光数据分析</a>
<ul>
<li class="chapter" data-level="10.10.1" data-path="anay_6800.html"><a href="anay_6800.html#jiptest"><i class="fa fa-check"></i><b>10.10.1</b> jip test 的实现</a></li>
<li class="chapter" data-level="10.10.2" data-path="anay_6800.html"><a href="anay_6800.html#jiptest_pack"><i class="fa fa-check"></i><b>10.10.2</b> <code>jiptest</code> 软件包安装</a></li>
<li class="chapter" data-level="10.10.3" data-path="anay_6800.html"><a href="anay_6800.html#readfluor"><i class="fa fa-check"></i><b>10.10.3</b> <code>read_files</code> 及 <code>read_dcfiles</code> 函数</a></li>
<li class="chapter" data-level="10.10.4" data-path="anay_6800.html"><a href="anay_6800.html#testfluor"><i class="fa fa-check"></i><b>10.10.4</b> <code>jip_test</code> 及 <code>jip_dctest</code> 函数</a></li>
<li class="chapter" data-level="10.10.5" data-path="anay_6800.html"><a href="anay_6800.html#plotfluor"><i class="fa fa-check"></i><b>10.10.5</b> 图像查看函数</a></li>
</ul></li>
</ul></li>
<li class="chapter" data-level="11" data-path="big-leaf.html"><a href="big-leaf.html"><i class="fa fa-check"></i><b>11</b> 大叶模型</a>
<ul>
<li class="chapter" data-level="11.1" data-path="big-leaf.html"><a href="big-leaf.html#leaf-scale-meas"><i class="fa fa-check"></i><b>11.1</b> 叶片尺度测量</a></li>
<li class="chapter" data-level="11.2" data-path="big-leaf.html"><a href="big-leaf.html#big-leaf-data"><i class="fa fa-check"></i><b>11.2</b> 数据的处理</a>
<ul>
<li class="chapter" data-level="11.2.1" data-path="big-leaf.html"><a href="big-leaf.html#single-data-big-leaf"><i class="fa fa-check"></i><b>11.2.1</b> 单个测量数据的处理</a></li>
<li class="chapter" data-level="11.2.2" data-path="big-leaf.html"><a href="big-leaf.html#big-leaf-data-MODEL"><i class="fa fa-check"></i><b>11.2.2</b> 大叶模型的数据处理</a></li>
</ul></li>
</ul></li>
<li class="chapter" data-level="12" data-path="pca-anylysis.html"><a href="pca-anylysis.html"><i class="fa fa-check"></i><b>12</b> 大话 PCA</a>
<ul>
<li class="chapter" data-level="12.1" data-path="pca-anylysis.html"><a href="pca-anylysis.html#geom-pca"><i class="fa fa-check"></i><b>12.1</b> 几何解释</a></li>
<li class="chapter" data-level="12.2" data-path="pca-anylysis.html"><a href="pca-anylysis.html#alge-pca"><i class="fa fa-check"></i><b>12.2</b> 线性代数解释</a>
<ul>
<li class="chapter" data-level="12.2.1" data-path="pca-anylysis.html"><a href="pca-anylysis.html#egi-pca"><i class="fa fa-check"></i><b>12.2.1</b> 特征向量与特征值</a></li>
<li class="chapter" data-level="12.2.2" data-path="pca-anylysis.html"><a href="pca-anylysis.html#man_pca"><i class="fa fa-check"></i><b>12.2.2</b> 手动实现过程</a></li>
<li class="chapter" data-level="12.2.3" data-path="pca-anylysis.html"><a href="pca-anylysis.html#prcom"><i class="fa fa-check"></i><b>12.2.3</b> <code>prcomp</code> 的实现</a></li>
</ul></li>
</ul></li>
<li class="chapter" data-level="13" data-path="sessioninfo.html"><a href="sessioninfo.html"><i class="fa fa-check"></i><b>13</b> 环境与配置</a></li>
<li class="chapter" data-level="" data-path="references.html"><a href="references.html"><i class="fa fa-check"></i>参考文献</a></li>
<li class="divider"></li>
<li><a href="https://bookdown.org" target="blank">由 bookdown 驱动</a></li>

</ul>

      </nav>
    </div>

    <div class="book-body">
      <div class="body-inner">
        <div class="book-header" role="navigation">
          <h1>
            <i class="fa fa-circle-o-notch fa-spin"></i><a href="./">使用 R 语言分析 LI-6400 和 LI-6800 光合仪的数据</a>
          </h1>
        </div>

        <div class="page-wrapper" tabindex="-1" role="main">
          <div class="page-inner">

            <section class="normal" id="section-">
<div id="lrc_fit" class="section level1" number="8">
<h1><span class="header-section-number">第 8 章</span> 光响应曲线的拟合</h1>
<p>光响应曲线模型有很多，主要分为四大类，直角双曲线，非直角双曲线，指数以及直角双曲线修正模型，我们分别对这四类进行阐述。</p>
<div id="rec_mod" class="section level2" number="8.1">
<h2><span class="header-section-number">8.1</span> 直角双曲线模型</h2>
<p><span class="citation">Baly (<a href="#ref-BalyEC1935" role="doc-biblioref">1935</a>)</span> 提出了直角双曲线模型，它的表达式为：</p>
<p><span class="math display" id="eq:rec">\[\begin{equation}
P_{n}  = \frac{\alpha I\ P_{nmax}}{\alpha I + P_{nmax}}- R_{d}
\tag{8.1}
\end{equation}\]</span></p>
<ul>
<li>其中，<span class="math inline">\(P_{n}\)</span> 为净光合速率；</li>
<li>I 为光强；</li>
<li><span class="math inline">\(\alpha\)</span> 为光响应曲线在光强为 0 时的斜率，即光响应曲线的初始斜率，也称之为初始量子效率；</li>
<li><span class="math inline">\(P_{nmax}\)</span> 为最大净光合速率；</li>
<li><span class="math inline">\(R_{d}\)</span>：为暗呼吸速率。</li>
</ul>
<p>对 <a href="lrc_fit.html#eq:rec">(8.1)</a> 求导可知其导数大于 0，也就是直角双曲线是一个没有极值的渐近线，因此，无法由 <a href="lrc_fit.html#eq:rec">(8.1)</a> 求得最大光合速率的饱和光强<a href="references.html#fn12" class="footnote-ref" id="fnref12"><sup>12</sup></a>。</p>
<p>因此就需要使用弱光条件下
(<span class="math inline">\(\leq\)</span> 200 <span class="math inline">\(\mu mol\cdot m^{-2}\cdot s^{-1}\)</span>) 的数据得到表观量子效率（apparent
quantum efficiency，AQE），利用非线性最小二乘法估算 P<span class="math inline">\(_{nmax}\)</span> ，然后利用 <span class="citation">ZiPiao (<a href="#ref-YEZiPiao2010" role="doc-biblioref">2010</a>)</span> 的式 <a href="lrc_fit.html#eq:aqe">(8.2)</a> 求解 <span class="math inline">\(I_{sat}\)</span>，</p>
<p><span class="math display" id="eq:aqe">\[\begin{equation}
P_{nmax}= AQE \times I_{sat} - R_{d}
\tag{8.2}
\end{equation}\]</span></p>
<p>但此方法测得的光饱和点远小于实测值，我们采用 0.7P<span class="math inline">\(_{nmax}\)</span> <span class="citation">Zhang, Shen, and Song (<a href="#ref-ZhangXS2009" role="doc-biblioref">2009</a>)</span>、0.9P<span class="math inline">\(_{nmax}\)</span>
<span class="citation">Huang et al. (<a href="#ref-HuangHY2009" role="doc-biblioref">2009</a>)</span>、或其他设定的值来的来估算<span class="math inline">\(I_{sat}\)</span>。</p>
<div id="rec_fit" class="section level3" number="8.1.1">
<h3><span class="header-section-number">8.1.1</span> 直角双曲线模型的实现</h3>
<p>若没有安装 <code>minpack.lm</code>, 则需要首先：</p>
<div class="sourceCode" id="cb71"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb71-1"><a href="lrc_fit.html#cb71-1" aria-hidden="true" tabindex="-1"></a><span class="fu">install.packages</span>(<span class="st">&quot;minpack.lm&quot;</span>)</span></code></pre></div>
<p>具体实现过程如下：</p>
<div class="sourceCode" id="cb72"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb72-1"><a href="lrc_fit.html#cb72-1" aria-hidden="true" tabindex="-1"></a><span class="co"># 调用非线性拟合包minpack.lm，也可以直接使用nls</span></span>
<span id="cb72-2"><a href="lrc_fit.html#cb72-2" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(minpack.lm)</span>
<span id="cb72-3"><a href="lrc_fit.html#cb72-3" aria-hidden="true" tabindex="-1"></a><span class="co"># 读取数据，同fitaci数据格式</span></span>
<span id="cb72-4"><a href="lrc_fit.html#cb72-4" aria-hidden="true" tabindex="-1"></a>lrc <span class="ot">&lt;-</span> <span class="fu">read.csv</span>(<span class="st">&quot;./data/lrc.csv&quot;</span>)</span>
<span id="cb72-5"><a href="lrc_fit.html#cb72-5" aria-hidden="true" tabindex="-1"></a>lrc <span class="ot">&lt;-</span> <span class="fu">subset</span>(lrc, Obs <span class="sc">&gt;</span> <span class="dv">0</span>)</span>
<span id="cb72-6"><a href="lrc_fit.html#cb72-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb72-7"><a href="lrc_fit.html#cb72-7" aria-hidden="true" tabindex="-1"></a><span class="co"># 光响应曲线没有太多参数，</span></span>
<span id="cb72-8"><a href="lrc_fit.html#cb72-8" aria-hidden="true" tabindex="-1"></a><span class="co"># 直接调出相应的光强和光合速率</span></span>
<span id="cb72-9"><a href="lrc_fit.html#cb72-9" aria-hidden="true" tabindex="-1"></a><span class="co"># 方便后面调用</span></span>
<span id="cb72-10"><a href="lrc_fit.html#cb72-10" aria-hidden="true" tabindex="-1"></a>lrc_Q <span class="ot">&lt;-</span> lrc<span class="sc">$</span>PARi</span>
<span id="cb72-11"><a href="lrc_fit.html#cb72-11" aria-hidden="true" tabindex="-1"></a>lrc_A <span class="ot">&lt;-</span> lrc<span class="sc">$</span>Photo </span>
<span id="cb72-12"><a href="lrc_fit.html#cb72-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb72-13"><a href="lrc_fit.html#cb72-13" aria-hidden="true" tabindex="-1"></a><span class="co"># 采用非线性拟合进行数据的拟合</span></span>
<span id="cb72-14"><a href="lrc_fit.html#cb72-14" aria-hidden="true" tabindex="-1"></a>lrcnls <span class="ot">&lt;-</span> <span class="fu">nlsLM</span>(lrc_A <span class="sc">~</span> (alpha <span class="sc">*</span> lrc_Q <span class="sc">*</span> Am) <span class="sc">*</span> </span>
<span id="cb72-15"><a href="lrc_fit.html#cb72-15" aria-hidden="true" tabindex="-1"></a>                (<span class="dv">1</span><span class="sc">/</span>(alpha <span class="sc">*</span> lrc_Q <span class="sc">+</span> Am)) <span class="sc">-</span> Rd,  </span>
<span id="cb72-16"><a href="lrc_fit.html#cb72-16" aria-hidden="true" tabindex="-1"></a>              <span class="at">start=</span><span class="fu">list</span>(<span class="at">Am=</span>(<span class="fu">max</span>(lrc_A)<span class="sc">-</span><span class="fu">min</span>(lrc_A)),</span>
<span id="cb72-17"><a href="lrc_fit.html#cb72-17" aria-hidden="true" tabindex="-1"></a>              <span class="at">alpha=</span><span class="fl">0.05</span>,<span class="at">Rd=</span><span class="sc">-</span><span class="fu">min</span>(lrc_A))</span>
<span id="cb72-18"><a href="lrc_fit.html#cb72-18" aria-hidden="true" tabindex="-1"></a>)</span>
<span id="cb72-19"><a href="lrc_fit.html#cb72-19" aria-hidden="true" tabindex="-1"></a>fitlrc_rec <span class="ot">&lt;-</span> <span class="fu">summary</span>(lrcnls)</span>
<span id="cb72-20"><a href="lrc_fit.html#cb72-20" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb72-21"><a href="lrc_fit.html#cb72-21" aria-hidden="true" tabindex="-1"></a><span class="co"># 补偿点时净光合速率为0，</span></span>
<span id="cb72-22"><a href="lrc_fit.html#cb72-22" aria-hidden="true" tabindex="-1"></a><span class="co"># 据此利用uniroot求解方程的根</span></span>
<span id="cb72-23"><a href="lrc_fit.html#cb72-23" aria-hidden="true" tabindex="-1"></a>Ic <span class="ot">&lt;-</span> <span class="cf">function</span>(Ic){(fitlrc_rec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> Ic <span class="sc">*</span></span>
<span id="cb72-24"><a href="lrc_fit.html#cb72-24" aria-hidden="true" tabindex="-1"></a>    fitlrc_rec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>]) <span class="sc">*</span> (<span class="dv">1</span><span class="sc">/</span>(fitlrc_rec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> </span>
<span id="cb72-25"><a href="lrc_fit.html#cb72-25" aria-hidden="true" tabindex="-1"></a>    Ic <span class="sc">+</span> fitlrc_rec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>])) <span class="sc">-</span> fitlrc_rec<span class="sc">$</span>coef[<span class="dv">3</span>,<span class="dv">1</span>] </span>
<span id="cb72-26"><a href="lrc_fit.html#cb72-26" aria-hidden="true" tabindex="-1"></a>}</span>
<span id="cb72-27"><a href="lrc_fit.html#cb72-27" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb72-28"><a href="lrc_fit.html#cb72-28" aria-hidden="true" tabindex="-1"></a><span class="fu">uniroot</span>(Ic, <span class="fu">c</span>(<span class="dv">0</span>,<span class="dv">50</span>))<span class="sc">$</span>root</span></code></pre></div>
<pre><code>## [1] 3.650053</code></pre>
<div class="sourceCode" id="cb74"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb74-1"><a href="lrc_fit.html#cb74-1" aria-hidden="true" tabindex="-1"></a><span class="co"># 根据饱和点定义，0.75最大光合速率为饱和点，</span></span>
<span id="cb74-2"><a href="lrc_fit.html#cb74-2" aria-hidden="true" tabindex="-1"></a><span class="co"># 也可以是其他比例</span></span>
<span id="cb74-3"><a href="lrc_fit.html#cb74-3" aria-hidden="true" tabindex="-1"></a><span class="co"># 据此利用uniroot求解方程的根</span></span>
<span id="cb74-4"><a href="lrc_fit.html#cb74-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb74-5"><a href="lrc_fit.html#cb74-5" aria-hidden="true" tabindex="-1"></a>Isat <span class="ot">&lt;-</span> <span class="cf">function</span>(Isat){(fitlrc_rec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> </span>
<span id="cb74-6"><a href="lrc_fit.html#cb74-6" aria-hidden="true" tabindex="-1"></a>        Isat <span class="sc">*</span> fitlrc_rec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>]) <span class="sc">*</span> </span>
<span id="cb74-7"><a href="lrc_fit.html#cb74-7" aria-hidden="true" tabindex="-1"></a>    (<span class="dv">1</span><span class="sc">/</span>(fitlrc_rec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> Isat <span class="sc">+</span> </span>
<span id="cb74-8"><a href="lrc_fit.html#cb74-8" aria-hidden="true" tabindex="-1"></a>          fitlrc_rec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>])) <span class="sc">-</span> fitlrc_rec<span class="sc">$</span>coef[<span class="dv">3</span>,<span class="dv">1</span>] <span class="sc">-</span></span>
<span id="cb74-9"><a href="lrc_fit.html#cb74-9" aria-hidden="true" tabindex="-1"></a>    <span class="fl">0.75</span> <span class="sc">*</span> fitlrc_rec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>]</span>
<span id="cb74-10"><a href="lrc_fit.html#cb74-10" aria-hidden="true" tabindex="-1"></a>}</span>
<span id="cb74-11"><a href="lrc_fit.html#cb74-11" aria-hidden="true" tabindex="-1"></a><span class="co"># 求值区间根据具体实验确定</span></span>
<span id="cb74-12"><a href="lrc_fit.html#cb74-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb74-13"><a href="lrc_fit.html#cb74-13" aria-hidden="true" tabindex="-1"></a><span class="fu">uniroot</span>(Isat, <span class="fu">c</span>(<span class="dv">0</span>,<span class="dv">2500</span>))<span class="sc">$</span>root</span></code></pre></div>
<pre><code>## [1] 700.0946</code></pre>
<div class="sourceCode" id="cb76"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb76-1"><a href="lrc_fit.html#cb76-1" aria-hidden="true" tabindex="-1"></a><span class="co"># 使用ggplot2进行作图并拟合曲线</span></span>
<span id="cb76-2"><a href="lrc_fit.html#cb76-2" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(ggplot2)</span>
<span id="cb76-3"><a href="lrc_fit.html#cb76-3" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb76-4"><a href="lrc_fit.html#cb76-4" aria-hidden="true" tabindex="-1"></a>light <span class="ot">&lt;-</span> <span class="fu">data.frame</span>(<span class="at">lrc_Q =</span> lrc<span class="sc">$</span>PARi, <span class="at">lrc_A =</span> lrc<span class="sc">$</span>Photo)</span>
<span id="cb76-5"><a href="lrc_fit.html#cb76-5" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb76-6"><a href="lrc_fit.html#cb76-6" aria-hidden="true" tabindex="-1"></a>p <span class="ot">&lt;-</span> <span class="fu">ggplot</span>(light, <span class="fu">aes</span>(<span class="at">x =</span> lrc_Q, <span class="at">y =</span> lrc_A))</span>
<span id="cb76-7"><a href="lrc_fit.html#cb76-7" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb76-8"><a href="lrc_fit.html#cb76-8" aria-hidden="true" tabindex="-1"></a>p1 <span class="ot">&lt;-</span> p <span class="sc">+</span> <span class="fu">geom_point</span>(<span class="at">shape =</span> <span class="dv">16</span>, <span class="at">size =</span> <span class="dv">3</span>, <span class="at">color =</span> <span class="st">&quot;green&quot;</span>) <span class="sc">+</span> </span>
<span id="cb76-9"><a href="lrc_fit.html#cb76-9" aria-hidden="true" tabindex="-1"></a>  <span class="fu">geom_smooth</span>(<span class="at">method=</span><span class="st">&quot;nls&quot;</span>, <span class="at">formula =</span> y <span class="sc">~</span> (alpha <span class="sc">*</span> x <span class="sc">*</span> Am) <span class="sc">*</span> </span>
<span id="cb76-10"><a href="lrc_fit.html#cb76-10" aria-hidden="true" tabindex="-1"></a>  (<span class="dv">1</span><span class="sc">/</span>(alpha <span class="sc">*</span> x <span class="sc">+</span> Am)) <span class="sc">-</span> Rd, <span class="at">se =</span> <span class="cn">FALSE</span>,</span>
<span id="cb76-11"><a href="lrc_fit.html#cb76-11" aria-hidden="true" tabindex="-1"></a>  <span class="at">method.args =</span> </span>
<span id="cb76-12"><a href="lrc_fit.html#cb76-12" aria-hidden="true" tabindex="-1"></a>  <span class="fu">list</span>(<span class="at">start =</span> <span class="fu">c</span>(<span class="at">Am=</span>(<span class="fu">max</span>(lrc_A)<span class="sc">-</span><span class="fu">min</span>(lrc_A)),</span>
<span id="cb76-13"><a href="lrc_fit.html#cb76-13" aria-hidden="true" tabindex="-1"></a>  <span class="at">alpha=</span><span class="fl">0.05</span>,<span class="at">Rd=</span><span class="sc">-</span><span class="fu">min</span>(lrc_A)), </span>
<span id="cb76-14"><a href="lrc_fit.html#cb76-14" aria-hidden="true" tabindex="-1"></a>  <span class="fu">aes</span>(<span class="at">x =</span>lrc_Q, <span class="at">y =</span> lrc_A, <span class="at">color=</span><span class="st">&#39;blue&#39;</span>, <span class="at">size =</span> <span class="fl">1.2</span>))</span>
<span id="cb76-15"><a href="lrc_fit.html#cb76-15" aria-hidden="true" tabindex="-1"></a>  ) <span class="sc">+</span></span>
<span id="cb76-16"><a href="lrc_fit.html#cb76-16" aria-hidden="true" tabindex="-1"></a>  <span class="fu">labs</span>(<span class="at">y=</span><span class="fu">expression</span>(<span class="fu">paste</span>(<span class="st">&quot;photosynthetic rate  &quot;</span>, </span>
<span id="cb76-17"><a href="lrc_fit.html#cb76-17" aria-hidden="true" tabindex="-1"></a>       <span class="st">&quot;(&quot;</span>, mu, mol<span class="sc">%.%</span>m<span class="sc">^-</span><span class="dv">2</span><span class="sc">%.%</span>s<span class="sc">^-</span><span class="dv">1</span>, <span class="st">&quot;)&quot;</span>)), </span>
<span id="cb76-18"><a href="lrc_fit.html#cb76-18" aria-hidden="true" tabindex="-1"></a>       <span class="at">x=</span><span class="fu">expression</span>(<span class="fu">paste</span>(<span class="st">&quot;PAR &quot;</span>, </span>
<span id="cb76-19"><a href="lrc_fit.html#cb76-19" aria-hidden="true" tabindex="-1"></a>       <span class="st">&quot;(&quot;</span>, mu, mol<span class="sc">%.%</span>m<span class="sc">^-</span><span class="dv">2</span><span class="sc">%.%</span>s<span class="sc">^-</span><span class="dv">1</span>, <span class="st">&quot;)&quot;</span>))</span>
<span id="cb76-20"><a href="lrc_fit.html#cb76-20" aria-hidden="true" tabindex="-1"></a>       )</span>
<span id="cb76-21"><a href="lrc_fit.html#cb76-21" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb76-22"><a href="lrc_fit.html#cb76-22" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb76-23"><a href="lrc_fit.html#cb76-23" aria-hidden="true" tabindex="-1"></a><span class="co"># 自定义坐标轴</span></span>
<span id="cb76-24"><a href="lrc_fit.html#cb76-24" aria-hidden="true" tabindex="-1"></a>p1 <span class="sc">+</span> <span class="fu">scale_x_continuous</span>(<span class="at">breaks =</span> <span class="fu">seq</span>(<span class="dv">0</span>, <span class="dv">2100</span>, <span class="at">by =</span> <span class="dv">200</span>)) <span class="sc">+</span>  </span>
<span id="cb76-25"><a href="lrc_fit.html#cb76-25" aria-hidden="true" tabindex="-1"></a>  <span class="fu">scale_y_continuous</span>(<span class="at">breaks=</span> <span class="fu">round</span>(light<span class="sc">$</span>lrc_A)) <span class="sc">+</span></span>
<span id="cb76-26"><a href="lrc_fit.html#cb76-26" aria-hidden="true" tabindex="-1"></a>  <span class="fu">theme</span>(<span class="at">axis.text.x  =</span> <span class="fu">element_text</span>(</span>
<span id="cb76-27"><a href="lrc_fit.html#cb76-27" aria-hidden="true" tabindex="-1"></a>    <span class="at">size =</span> <span class="dv">10</span>, <span class="at">angle=</span><span class="dv">30</span>, <span class="at">vjust=</span><span class="fl">0.5</span>), </span>
<span id="cb76-28"><a href="lrc_fit.html#cb76-28" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.text.y =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">10</span>),</span>
<span id="cb76-29"><a href="lrc_fit.html#cb76-29" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.title.x =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">12</span>, <span class="at">face =</span> <span class="st">&#39;bold&#39;</span>),</span>
<span id="cb76-30"><a href="lrc_fit.html#cb76-30" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.title.y =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">12</span>, <span class="at">face =</span> <span class="st">&#39;bold&#39;</span>)</span>
<span id="cb76-31"><a href="lrc_fit.html#cb76-31" aria-hidden="true" tabindex="-1"></a>  )</span></code></pre></div>
<div class="figure"><span style="display:block;" id="fig:recr"></span>
<img src="bookdown_files/figure-html/recr-1.png" alt="直角双曲线模型拟合" width="672" />
<p class="caption">
图 8.1: 直角双曲线模型拟合
</p>
</div>
<p>代码目的见注释，其实现过程主要分三步：</p>
<ul>
<li>数据的导入，这与之前相同，具体格式方法参考前文 <span class="math inline">\(\ref{fitaci}\)</span>。</li>
<li>光响应曲线的拟合，使用到了非线性模型 nlsLM，也可以使用 nls，具体实现方法请查看参考文档。</li>
<li>求饱和点和补偿点，补偿点的计算根据其定义，净光合速率为 0，求解模型在一定区间的根来计算，而饱和点则较为麻烦，若使用式 <a href="lrc_fit.html#eq:aqe">(8.2)</a>
计算，那么饱和点远远低于我们实际需求的，因此，我们使用了 0.75P<span class="math inline">\(_{nmax}\)</span> 来计算，求得目标区间的根。当然也可以采用其他比例来作为饱和点光合速率。</li>
</ul>
<table>
<caption><span id="tab:rectable">表 8.1: </span>直角双曲线计算参数</caption>
<thead>
<tr class="header">
<th align="left"></th>
<th align="right">Estimate</th>
<th align="right">Std. Error</th>
<th align="right">t value</th>
<th align="right">Pr(&gt;|t|)</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td align="left">Am</td>
<td align="right">16.6721752</td>
<td align="right">0.1522849</td>
<td align="right">109.480151</td>
<td align="right">0.0000000</td>
</tr>
<tr class="even">
<td align="left">alpha</td>
<td align="right">0.0783312</td>
<td align="right">0.0026774</td>
<td align="right">29.256870</td>
<td align="right">0.0000000</td>
</tr>
<tr class="odd">
<td align="left">Rd</td>
<td align="right">0.2810926</td>
<td align="right">0.0789338</td>
<td align="right">3.561117</td>
<td align="right">0.0051716</td>
</tr>
</tbody>
</table>
<p>最终的数据拟结果如图 <a href="lrc_fit.html#fig:recr">8.1</a> 所示，拟合的参数及结果见表 <a href="lrc_fit.html#tab:rectable">8.1</a>。</p>

</div>
</div>
<div id="nonrec-mod" class="section level2" number="8.2">
<h2><span class="header-section-number">8.2</span> 非直角双曲线模型</h2>
<p><span class="citation">Thornley (<a href="#ref-Thornley1976" role="doc-biblioref">1976</a>)</span> 提出了非直角双曲线模型，它的表达式为：</p>
<p><span class="math display" id="eq:nrec">\[\begin{equation}
P_{n} = \frac{\alpha I + P_{nmax} \sqrt{(\alpha I + P_{nmax})^{2} - 4  \theta \alpha I P_{nmax}}}{2 \theta} - R_{d}
\tag{8.3}
\end{equation}\]</span></p>
<p>其中，<span class="math inline">\(\theta\)</span> 为表示曲线弯曲程度的曲角参数，取值为<span class="math inline">\(0\leq \theta \leq 1\)</span>。其他参数意义同式 <a href="lrc_fit.html#eq:rec">(8.1)</a>。同样如同直角双曲线模型，式仍然没有极值，无法求得 <span class="math inline">\(I_{sat}\)</span>，可以仍然参考直角双曲线模型的方式进行计算。</p>
<div id="nonrec_mode_exam" class="section level3" number="8.2.1">
<h3><span class="header-section-number">8.2.1</span> 非直角双曲线模型的实现</h3>
<div class="sourceCode" id="cb77"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb77-1"><a href="lrc_fit.html#cb77-1" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(minpack.lm)</span>
<span id="cb77-2"><a href="lrc_fit.html#cb77-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb77-3"><a href="lrc_fit.html#cb77-3" aria-hidden="true" tabindex="-1"></a><span class="co"># 读取数据，同fitaci数据格式</span></span>
<span id="cb77-4"><a href="lrc_fit.html#cb77-4" aria-hidden="true" tabindex="-1"></a>lrc <span class="ot">&lt;-</span> <span class="fu">read.csv</span>(<span class="st">&quot;./data/lrc.csv&quot;</span>)</span>
<span id="cb77-5"><a href="lrc_fit.html#cb77-5" aria-hidden="true" tabindex="-1"></a>lrc <span class="ot">&lt;-</span> <span class="fu">subset</span>(lrc, Obs <span class="sc">&gt;</span> <span class="dv">0</span>)</span>
<span id="cb77-6"><a href="lrc_fit.html#cb77-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb77-7"><a href="lrc_fit.html#cb77-7" aria-hidden="true" tabindex="-1"></a><span class="co"># 光响应曲线没有太多参数，</span></span>
<span id="cb77-8"><a href="lrc_fit.html#cb77-8" aria-hidden="true" tabindex="-1"></a><span class="co"># 直接调出相应的光强和光合速率</span></span>
<span id="cb77-9"><a href="lrc_fit.html#cb77-9" aria-hidden="true" tabindex="-1"></a><span class="co"># 方便后面调用</span></span>
<span id="cb77-10"><a href="lrc_fit.html#cb77-10" aria-hidden="true" tabindex="-1"></a>lrc_Q <span class="ot">&lt;-</span> lrc<span class="sc">$</span>PARi</span>
<span id="cb77-11"><a href="lrc_fit.html#cb77-11" aria-hidden="true" tabindex="-1"></a>lrc_A <span class="ot">&lt;-</span> lrc<span class="sc">$</span>Photo </span>
<span id="cb77-12"><a href="lrc_fit.html#cb77-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb77-13"><a href="lrc_fit.html#cb77-13" aria-hidden="true" tabindex="-1"></a><span class="co"># 非直角双曲线模型的拟合</span></span>
<span id="cb77-14"><a href="lrc_fit.html#cb77-14" aria-hidden="true" tabindex="-1"></a>lrcnls <span class="ot">&lt;-</span> <span class="fu">nlsLM</span>(lrc_A <span class="sc">~</span> </span>
<span id="cb77-15"><a href="lrc_fit.html#cb77-15" aria-hidden="true" tabindex="-1"></a>                (<span class="dv">1</span><span class="sc">/</span>(<span class="dv">2</span><span class="sc">*</span>theta))<span class="sc">*</span></span>
<span id="cb77-16"><a href="lrc_fit.html#cb77-16" aria-hidden="true" tabindex="-1"></a>                (alpha<span class="sc">*</span>lrc_Q<span class="sc">+</span>Am<span class="sc">-</span><span class="fu">sqrt</span>((alpha<span class="sc">*</span>lrc_Q<span class="sc">+</span>Am)<span class="sc">^</span><span class="dv">2</span> <span class="sc">-</span> </span>
<span id="cb77-17"><a href="lrc_fit.html#cb77-17" aria-hidden="true" tabindex="-1"></a>                <span class="dv">4</span><span class="sc">*</span>alpha<span class="sc">*</span>theta<span class="sc">*</span>Am<span class="sc">*</span>lrc_Q))<span class="sc">-</span> Rd,</span>
<span id="cb77-18"><a href="lrc_fit.html#cb77-18" aria-hidden="true" tabindex="-1"></a>                <span class="at">start=</span><span class="fu">list</span>(<span class="at">Am=</span>(<span class="fu">max</span>(lrc_A)<span class="sc">-</span><span class="fu">min</span>(lrc_A)),</span>
<span id="cb77-19"><a href="lrc_fit.html#cb77-19" aria-hidden="true" tabindex="-1"></a>                <span class="at">alpha=</span><span class="fl">0.05</span>,<span class="at">Rd=</span><span class="sc">-</span><span class="fu">min</span>(lrc_A),<span class="at">theta=</span><span class="dv">1</span>)) </span>
<span id="cb77-20"><a href="lrc_fit.html#cb77-20" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb77-21"><a href="lrc_fit.html#cb77-21" aria-hidden="true" tabindex="-1"></a>fitlrc_nrec <span class="ot">&lt;-</span> <span class="fu">summary</span>(lrcnls)</span>
<span id="cb77-22"><a href="lrc_fit.html#cb77-22" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb77-23"><a href="lrc_fit.html#cb77-23" aria-hidden="true" tabindex="-1"></a><span class="co"># 光补偿点</span></span>
<span id="cb77-24"><a href="lrc_fit.html#cb77-24" aria-hidden="true" tabindex="-1"></a>Ic <span class="ot">&lt;-</span> <span class="cf">function</span>(Ic){</span>
<span id="cb77-25"><a href="lrc_fit.html#cb77-25" aria-hidden="true" tabindex="-1"></a>  (<span class="dv">1</span><span class="sc">/</span>(<span class="dv">2</span> <span class="sc">*</span> fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">4</span>,<span class="dv">1</span>])) <span class="sc">*</span> </span>
<span id="cb77-26"><a href="lrc_fit.html#cb77-26" aria-hidden="true" tabindex="-1"></a>    (fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> Ic <span class="sc">+</span> fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>] <span class="sc">-</span> </span>
<span id="cb77-27"><a href="lrc_fit.html#cb77-27" aria-hidden="true" tabindex="-1"></a>    <span class="fu">sqrt</span>((fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> Ic <span class="sc">+</span> fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>]</span>
<span id="cb77-28"><a href="lrc_fit.html#cb77-28" aria-hidden="true" tabindex="-1"></a>    )<span class="sc">^</span><span class="dv">2</span> <span class="sc">-</span>  <span class="dv">4</span> <span class="sc">*</span> fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> </span>
<span id="cb77-29"><a href="lrc_fit.html#cb77-29" aria-hidden="true" tabindex="-1"></a>    fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">4</span>,<span class="dv">1</span>] <span class="sc">*</span> fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>] <span class="sc">*</span> Ic)) <span class="sc">-</span></span>
<span id="cb77-30"><a href="lrc_fit.html#cb77-30" aria-hidden="true" tabindex="-1"></a>    fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">3</span>,<span class="dv">1</span>]</span>
<span id="cb77-31"><a href="lrc_fit.html#cb77-31" aria-hidden="true" tabindex="-1"></a>}</span>
<span id="cb77-32"><a href="lrc_fit.html#cb77-32" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb77-33"><a href="lrc_fit.html#cb77-33" aria-hidden="true" tabindex="-1"></a><span class="fu">uniroot</span>(Ic, <span class="fu">c</span>(<span class="dv">0</span>,<span class="dv">50</span>))<span class="sc">$</span>root  </span></code></pre></div>
<pre><code>## [1] 2.234292</code></pre>
<div class="sourceCode" id="cb79"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb79-1"><a href="lrc_fit.html#cb79-1" aria-hidden="true" tabindex="-1"></a><span class="co"># 光饱和点</span></span>
<span id="cb79-2"><a href="lrc_fit.html#cb79-2" aria-hidden="true" tabindex="-1"></a>Isat <span class="ot">&lt;-</span> <span class="cf">function</span>(Isat){</span>
<span id="cb79-3"><a href="lrc_fit.html#cb79-3" aria-hidden="true" tabindex="-1"></a>  (<span class="dv">1</span><span class="sc">/</span>(<span class="dv">2</span> <span class="sc">*</span> fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">4</span>,<span class="dv">1</span>])) <span class="sc">*</span> (fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> </span>
<span id="cb79-4"><a href="lrc_fit.html#cb79-4" aria-hidden="true" tabindex="-1"></a>  Isat <span class="sc">+</span> fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>] <span class="sc">-</span> <span class="fu">sqrt</span>(</span>
<span id="cb79-5"><a href="lrc_fit.html#cb79-5" aria-hidden="true" tabindex="-1"></a>  (fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> Isat <span class="sc">+</span>fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>])<span class="sc">^</span><span class="dv">2</span> <span class="sc">-</span> </span>
<span id="cb79-6"><a href="lrc_fit.html#cb79-6" aria-hidden="true" tabindex="-1"></a>  <span class="dv">4</span><span class="sc">*</span>fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">*</span> fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">4</span>,<span class="dv">1</span>] <span class="sc">*</span> </span>
<span id="cb79-7"><a href="lrc_fit.html#cb79-7" aria-hidden="true" tabindex="-1"></a>  fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>] <span class="sc">*</span> Isat)) <span class="sc">-</span> </span>
<span id="cb79-8"><a href="lrc_fit.html#cb79-8" aria-hidden="true" tabindex="-1"></a>  fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">3</span>,<span class="dv">1</span>] <span class="sc">-</span> (<span class="fl">0.9</span><span class="sc">*</span>fitlrc_nrec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>])}</span>
<span id="cb79-9"><a href="lrc_fit.html#cb79-9" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb79-10"><a href="lrc_fit.html#cb79-10" aria-hidden="true" tabindex="-1"></a><span class="fu">uniroot</span>(Isat, <span class="fu">c</span>(<span class="dv">0</span>,<span class="dv">2000</span>))<span class="sc">$</span>root</span></code></pre></div>
<pre><code>## [1] 1596.286</code></pre>
<div class="sourceCode" id="cb81"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb81-1"><a href="lrc_fit.html#cb81-1" aria-hidden="true" tabindex="-1"></a><span class="co"># 使用ggplot2进行作图并拟合曲线</span></span>
<span id="cb81-2"><a href="lrc_fit.html#cb81-2" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(ggplot2)</span>
<span id="cb81-3"><a href="lrc_fit.html#cb81-3" aria-hidden="true" tabindex="-1"></a>light <span class="ot">&lt;-</span> <span class="fu">data.frame</span>(<span class="at">lrc_Q =</span> lrc<span class="sc">$</span>PARi, <span class="at">lrc_A =</span> lrc<span class="sc">$</span>Photo)</span>
<span id="cb81-4"><a href="lrc_fit.html#cb81-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb81-5"><a href="lrc_fit.html#cb81-5" aria-hidden="true" tabindex="-1"></a>p <span class="ot">&lt;-</span> <span class="fu">ggplot</span>(light, <span class="fu">aes</span>(<span class="at">x =</span> lrc_Q, <span class="at">y =</span> lrc_A))</span>
<span id="cb81-6"><a href="lrc_fit.html#cb81-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb81-7"><a href="lrc_fit.html#cb81-7" aria-hidden="true" tabindex="-1"></a>p1 <span class="ot">&lt;-</span> p <span class="sc">+</span> <span class="fu">geom_point</span>(<span class="at">shape =</span> <span class="dv">16</span>, <span class="at">size =</span> <span class="dv">3</span>, <span class="at">color =</span> <span class="st">&quot;green&quot;</span>) <span class="sc">+</span> </span>
<span id="cb81-8"><a href="lrc_fit.html#cb81-8" aria-hidden="true" tabindex="-1"></a>  <span class="fu">geom_smooth</span>(<span class="at">method=</span><span class="st">&quot;nls&quot;</span>, <span class="at">formula =</span> y <span class="sc">~</span> </span>
<span id="cb81-9"><a href="lrc_fit.html#cb81-9" aria-hidden="true" tabindex="-1"></a>  (<span class="dv">1</span><span class="sc">/</span>(<span class="dv">2</span><span class="sc">*</span>theta))<span class="sc">*</span>(alpha<span class="sc">*</span>x<span class="sc">+</span>Am<span class="sc">-</span><span class="fu">sqrt</span>((alpha<span class="sc">*</span>x<span class="sc">+</span>Am)<span class="sc">^</span><span class="dv">2</span> <span class="sc">-</span> </span>
<span id="cb81-10"><a href="lrc_fit.html#cb81-10" aria-hidden="true" tabindex="-1"></a>   <span class="dv">4</span><span class="sc">*</span>alpha<span class="sc">*</span>theta<span class="sc">*</span>Am<span class="sc">*</span>x))<span class="sc">-</span> Rd, <span class="at">se =</span> <span class="cn">FALSE</span>,</span>
<span id="cb81-11"><a href="lrc_fit.html#cb81-11" aria-hidden="true" tabindex="-1"></a>   <span class="at">method.args =</span> <span class="fu">list</span>(<span class="at">start =</span> <span class="fu">c</span>(<span class="at">Am=</span>(<span class="fu">max</span>(lrc_A)<span class="sc">-</span><span class="fu">min</span>(lrc_A)), </span>
<span id="cb81-12"><a href="lrc_fit.html#cb81-12" aria-hidden="true" tabindex="-1"></a>   <span class="at">alpha=</span><span class="fl">0.05</span>, <span class="at">Rd=</span><span class="sc">-</span><span class="fu">min</span>(lrc_A), <span class="at">theta=</span><span class="dv">1</span>), </span>
<span id="cb81-13"><a href="lrc_fit.html#cb81-13" aria-hidden="true" tabindex="-1"></a>    <span class="fu">aes</span>(<span class="at">x =</span>lrc_Q, <span class="at">y =</span> lrc_A, <span class="at">color=</span><span class="st">&#39;blue&#39;</span>, <span class="at">size =</span> <span class="fl">1.2</span>))</span>
<span id="cb81-14"><a href="lrc_fit.html#cb81-14" aria-hidden="true" tabindex="-1"></a>) <span class="sc">+</span></span>
<span id="cb81-15"><a href="lrc_fit.html#cb81-15" aria-hidden="true" tabindex="-1"></a>  <span class="fu">labs</span>(<span class="at">y=</span><span class="fu">expression</span>(<span class="fu">paste</span>(<span class="st">&quot;photosynthetic rate  &quot;</span>, </span>
<span id="cb81-16"><a href="lrc_fit.html#cb81-16" aria-hidden="true" tabindex="-1"></a>          <span class="st">&quot;(&quot;</span>, mu, mol<span class="sc">%.%</span>m<span class="sc">^-</span><span class="dv">2</span><span class="sc">%.%</span>s<span class="sc">^-</span><span class="dv">1</span>, <span class="st">&quot;)&quot;</span>)), </span>
<span id="cb81-17"><a href="lrc_fit.html#cb81-17" aria-hidden="true" tabindex="-1"></a>       <span class="at">x=</span><span class="fu">expression</span>(<span class="fu">paste</span>(<span class="st">&quot;PAR &quot;</span>, </span>
<span id="cb81-18"><a href="lrc_fit.html#cb81-18" aria-hidden="true" tabindex="-1"></a>           <span class="st">&quot;(&quot;</span>, mu, mol<span class="sc">%.%</span>m<span class="sc">^-</span><span class="dv">2</span><span class="sc">%.%</span>s<span class="sc">^-</span><span class="dv">1</span>, <span class="st">&quot;)&quot;</span>)))</span>
<span id="cb81-19"><a href="lrc_fit.html#cb81-19" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb81-20"><a href="lrc_fit.html#cb81-20" aria-hidden="true" tabindex="-1"></a><span class="co"># 自定义坐标轴</span></span>
<span id="cb81-21"><a href="lrc_fit.html#cb81-21" aria-hidden="true" tabindex="-1"></a>p1 <span class="sc">+</span> <span class="fu">scale_x_continuous</span>(<span class="at">breaks =</span> <span class="fu">seq</span>(<span class="dv">0</span>, <span class="dv">2100</span>, <span class="at">by =</span> <span class="dv">200</span>)) <span class="sc">+</span>  </span>
<span id="cb81-22"><a href="lrc_fit.html#cb81-22" aria-hidden="true" tabindex="-1"></a>  <span class="fu">scale_y_continuous</span>(<span class="at">breaks=</span> <span class="fu">round</span>(light<span class="sc">$</span>lrc_A)) <span class="sc">+</span></span>
<span id="cb81-23"><a href="lrc_fit.html#cb81-23" aria-hidden="true" tabindex="-1"></a>   <span class="fu">theme</span>(<span class="at">axis.text.x  =</span> <span class="fu">element_text</span>(</span>
<span id="cb81-24"><a href="lrc_fit.html#cb81-24" aria-hidden="true" tabindex="-1"></a>    <span class="at">size =</span> <span class="dv">10</span>, <span class="at">angle=</span><span class="dv">30</span>, <span class="at">vjust=</span><span class="fl">0.5</span>), </span>
<span id="cb81-25"><a href="lrc_fit.html#cb81-25" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.text.y =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">10</span>),</span>
<span id="cb81-26"><a href="lrc_fit.html#cb81-26" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.title.x =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">12</span>, <span class="at">face =</span> <span class="st">&#39;bold&#39;</span>),</span>
<span id="cb81-27"><a href="lrc_fit.html#cb81-27" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.title.y =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">12</span>, <span class="at">face =</span> <span class="st">&#39;bold&#39;</span>)</span>
<span id="cb81-28"><a href="lrc_fit.html#cb81-28" aria-hidden="true" tabindex="-1"></a>  )</span></code></pre></div>
<div class="figure"><span style="display:block;" id="fig:nrecr"></span>
<img src="bookdown_files/figure-html/nrecr-1.png" alt="非直角双曲线模型拟合" width="672" />
<p class="caption">
图 8.2: 非直角双曲线模型拟合
</p>
</div>
<table>
<caption><span id="tab:nrectable">表 8.2: </span>非直角双曲线计算参数</caption>
<thead>
<tr class="header">
<th align="left"></th>
<th align="right">Estimate</th>
<th align="right">Std. Error</th>
<th align="right">t value</th>
<th align="right">Pr(&gt;|t|)</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td align="left">Am</td>
<td align="right">15.8017296</td>
<td align="right">0.1513064</td>
<td align="right">104.435285</td>
<td align="right">0.0000000</td>
</tr>
<tr class="even">
<td align="left">alpha</td>
<td align="right">0.0658067</td>
<td align="right">0.0020216</td>
<td align="right">32.551422</td>
<td align="right">0.0000000</td>
</tr>
<tr class="odd">
<td align="left">Rd</td>
<td align="right">0.1461717</td>
<td align="right">0.0420800</td>
<td align="right">3.473659</td>
<td align="right">0.0070082</td>
</tr>
<tr class="even">
<td align="left">theta</td>
<td align="right">0.3700908</td>
<td align="right">0.0493403</td>
<td align="right">7.500783</td>
<td align="right">0.0000369</td>
</tr>
</tbody>
</table>
<p>最终的数据拟结果如图 <a href="lrc_fit.html#fig:nrecr">8.2</a> 所示，拟合的参数及结果见表 <a href="lrc_fit.html#tab:nrectable">8.2</a>。单纯从作图来看，本例数据使用非直角双曲线与散点图重合程度更高。</p>

</div>
</div>
<div id="lrc_exp" class="section level2" number="8.3">
<h2><span class="header-section-number">8.3</span> 指数模型</h2>
<p>光合指数模型较多，我们此处使用的指数函数的模型 <span class="citation">Prado and Moraes (<a href="#ref-Prado1997Photosynthetic" role="doc-biblioref">1997</a>)</span>，其表达式为：</p>
<p><span class="math display" id="eq:exp">\[\begin{equation}
P_{n} = P_{nmax}[1 - e^{-b(I-I_{C})}]
\tag{8.4}
\end{equation}\]</span></p>
<p>其中，<span class="math inline">\(I_{c}\)</span> 为光补偿点，<span class="math inline">\(e\)</span> 为自然对数的底，b为常数，其他参数意义同 <a href="lrc_fit.html#eq:exp">(8.4)</a>。同样，该方程仍然是没有极值的函数，但我们可以直接求得光补偿点。</p>
<div id="lrc_exp_exam" class="section level3" number="8.3.1">
<h3><span class="header-section-number">8.3.1</span> 指数模型的实现</h3>
<div class="sourceCode" id="cb82"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb82-1"><a href="lrc_fit.html#cb82-1" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(minpack.lm)</span>
<span id="cb82-2"><a href="lrc_fit.html#cb82-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb82-3"><a href="lrc_fit.html#cb82-3" aria-hidden="true" tabindex="-1"></a><span class="co"># 读取数据，同fitaci数据格式</span></span>
<span id="cb82-4"><a href="lrc_fit.html#cb82-4" aria-hidden="true" tabindex="-1"></a>lrc <span class="ot">&lt;-</span> <span class="fu">read.csv</span>(<span class="st">&quot;./data/lrc.csv&quot;</span>)</span>
<span id="cb82-5"><a href="lrc_fit.html#cb82-5" aria-hidden="true" tabindex="-1"></a>lrc <span class="ot">&lt;-</span> <span class="fu">subset</span>(lrc, Obs <span class="sc">&gt;</span> <span class="dv">0</span>)</span>
<span id="cb82-6"><a href="lrc_fit.html#cb82-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb82-7"><a href="lrc_fit.html#cb82-7" aria-hidden="true" tabindex="-1"></a><span class="co"># 光响应曲线没有太多参数，</span></span>
<span id="cb82-8"><a href="lrc_fit.html#cb82-8" aria-hidden="true" tabindex="-1"></a><span class="co"># 直接调出相应的光强和光合速率</span></span>
<span id="cb82-9"><a href="lrc_fit.html#cb82-9" aria-hidden="true" tabindex="-1"></a><span class="co"># 方便后面调用</span></span>
<span id="cb82-10"><a href="lrc_fit.html#cb82-10" aria-hidden="true" tabindex="-1"></a>lrc_Q <span class="ot">&lt;-</span> lrc<span class="sc">$</span>PARi</span>
<span id="cb82-11"><a href="lrc_fit.html#cb82-11" aria-hidden="true" tabindex="-1"></a>lrc_A <span class="ot">&lt;-</span> lrc<span class="sc">$</span>Photo </span>
<span id="cb82-12"><a href="lrc_fit.html#cb82-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb82-13"><a href="lrc_fit.html#cb82-13" aria-hidden="true" tabindex="-1"></a><span class="co"># 模型的拟合</span></span>
<span id="cb82-14"><a href="lrc_fit.html#cb82-14" aria-hidden="true" tabindex="-1"></a>lrcnls <span class="ot">&lt;-</span> <span class="fu">nlsLM</span>(lrc_A <span class="sc">~</span> Am<span class="sc">*</span>(<span class="dv">1</span><span class="sc">-</span><span class="fu">exp</span>((<span class="sc">-</span>b)<span class="sc">*</span>(lrc_Q<span class="sc">-</span>Ic))),</span>
<span id="cb82-15"><a href="lrc_fit.html#cb82-15" aria-hidden="true" tabindex="-1"></a>                <span class="at">start=</span><span class="fu">list</span>(<span class="at">Am=</span>(<span class="fu">max</span>(lrc_A)<span class="sc">-</span><span class="fu">min</span>(lrc_A)),</span>
<span id="cb82-16"><a href="lrc_fit.html#cb82-16" aria-hidden="true" tabindex="-1"></a>                           <span class="at">Ic=</span><span class="dv">5</span>, <span class="at">b=</span><span class="dv">1</span>)</span>
<span id="cb82-17"><a href="lrc_fit.html#cb82-17" aria-hidden="true" tabindex="-1"></a>                )</span>
<span id="cb82-18"><a href="lrc_fit.html#cb82-18" aria-hidden="true" tabindex="-1"></a>fitlrc_exp <span class="ot">&lt;-</span> <span class="fu">summary</span>(lrcnls)</span>
<span id="cb82-19"><a href="lrc_fit.html#cb82-19" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb82-20"><a href="lrc_fit.html#cb82-20" aria-hidden="true" tabindex="-1"></a><span class="co"># 光饱和点</span></span>
<span id="cb82-21"><a href="lrc_fit.html#cb82-21" aria-hidden="true" tabindex="-1"></a>Isat <span class="ot">&lt;-</span> <span class="cf">function</span>(Isat){fitlrc_exp<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>]<span class="sc">*</span></span>
<span id="cb82-22"><a href="lrc_fit.html#cb82-22" aria-hidden="true" tabindex="-1"></a>    (<span class="dv">1</span><span class="sc">-</span><span class="fu">exp</span>((<span class="sc">-</span>fitlrc_exp<span class="sc">$</span>coef[<span class="dv">3</span>,<span class="dv">1</span>])<span class="sc">*</span>(Isat<span class="sc">-</span></span>
<span id="cb82-23"><a href="lrc_fit.html#cb82-23" aria-hidden="true" tabindex="-1"></a>    fitlrc_exp<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>])))<span class="sc">-</span><span class="fl">0.9</span><span class="sc">*</span>fitlrc_exp<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>]}</span>
<span id="cb82-24"><a href="lrc_fit.html#cb82-24" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb82-25"><a href="lrc_fit.html#cb82-25" aria-hidden="true" tabindex="-1"></a><span class="fu">uniroot</span>(Isat, <span class="fu">c</span>(<span class="dv">0</span>,<span class="dv">2000</span>))<span class="sc">$</span>root</span></code></pre></div>
<pre><code>## [1] 558.6038</code></pre>
<div class="sourceCode" id="cb84"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb84-1"><a href="lrc_fit.html#cb84-1" aria-hidden="true" tabindex="-1"></a><span class="do">## 拟合图形</span></span>
<span id="cb84-2"><a href="lrc_fit.html#cb84-2" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(ggplot2)</span>
<span id="cb84-3"><a href="lrc_fit.html#cb84-3" aria-hidden="true" tabindex="-1"></a>light <span class="ot">&lt;-</span> <span class="fu">data.frame</span>(<span class="at">lrc_Q =</span> lrc<span class="sc">$</span>PARi, <span class="at">lrc_A =</span> lrc<span class="sc">$</span>Photo)</span>
<span id="cb84-4"><a href="lrc_fit.html#cb84-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb84-5"><a href="lrc_fit.html#cb84-5" aria-hidden="true" tabindex="-1"></a>p <span class="ot">&lt;-</span> <span class="fu">ggplot</span>(light, <span class="fu">aes</span>(<span class="at">x =</span> lrc_Q, <span class="at">y =</span> lrc_A))</span>
<span id="cb84-6"><a href="lrc_fit.html#cb84-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb84-7"><a href="lrc_fit.html#cb84-7" aria-hidden="true" tabindex="-1"></a>p1 <span class="ot">&lt;-</span> p <span class="sc">+</span> </span>
<span id="cb84-8"><a href="lrc_fit.html#cb84-8" aria-hidden="true" tabindex="-1"></a>  <span class="fu">geom_point</span>(<span class="at">shape =</span> <span class="dv">16</span>, <span class="at">size =</span> <span class="dv">3</span>, <span class="at">color =</span> <span class="st">&quot;green&quot;</span>) <span class="sc">+</span> </span>
<span id="cb84-9"><a href="lrc_fit.html#cb84-9" aria-hidden="true" tabindex="-1"></a>  <span class="fu">geom_smooth</span>(<span class="at">method=</span><span class="st">&quot;nls&quot;</span>, <span class="at">formula =</span> </span>
<span id="cb84-10"><a href="lrc_fit.html#cb84-10" aria-hidden="true" tabindex="-1"></a>    y <span class="sc">~</span> Am<span class="sc">*</span>(<span class="dv">1</span><span class="sc">-</span><span class="fu">exp</span>((<span class="sc">-</span>b)<span class="sc">*</span>(x <span class="sc">-</span>Ic))), </span>
<span id="cb84-11"><a href="lrc_fit.html#cb84-11" aria-hidden="true" tabindex="-1"></a>    <span class="at">se =</span> <span class="cn">FALSE</span>, <span class="at">method.args =</span> <span class="fu">list</span>(</span>
<span id="cb84-12"><a href="lrc_fit.html#cb84-12" aria-hidden="true" tabindex="-1"></a>    <span class="at">start =</span> <span class="fu">c</span>(<span class="at">Am=</span>(<span class="fu">max</span>(lrc_A)<span class="sc">-</span><span class="fu">min</span>(lrc_A)),</span>
<span id="cb84-13"><a href="lrc_fit.html#cb84-13" aria-hidden="true" tabindex="-1"></a>    <span class="at">Ic=</span><span class="dv">5</span>, <span class="at">b=</span><span class="fl">0.002</span>), <span class="fu">aes</span>(<span class="at">x =</span>lrc_Q, <span class="at">y =</span> lrc_A, </span>
<span id="cb84-14"><a href="lrc_fit.html#cb84-14" aria-hidden="true" tabindex="-1"></a>    <span class="at">color=</span><span class="st">&#39;blue&#39;</span>, <span class="at">size =</span> <span class="fl">1.2</span>))</span>
<span id="cb84-15"><a href="lrc_fit.html#cb84-15" aria-hidden="true" tabindex="-1"></a>  ) <span class="sc">+</span></span>
<span id="cb84-16"><a href="lrc_fit.html#cb84-16" aria-hidden="true" tabindex="-1"></a>  <span class="fu">labs</span>(<span class="at">y=</span><span class="fu">expression</span>(<span class="fu">paste</span>(<span class="st">&quot;photosynthetic rate  &quot;</span>, </span>
<span id="cb84-17"><a href="lrc_fit.html#cb84-17" aria-hidden="true" tabindex="-1"></a>          <span class="st">&quot;(&quot;</span>, mu, mol<span class="sc">%.%</span>m<span class="sc">^-</span><span class="dv">2</span><span class="sc">%.%</span>s<span class="sc">^-</span><span class="dv">1</span>, <span class="st">&quot;)&quot;</span>)), </span>
<span id="cb84-18"><a href="lrc_fit.html#cb84-18" aria-hidden="true" tabindex="-1"></a>       <span class="at">x=</span><span class="fu">expression</span>(<span class="fu">paste</span>(<span class="st">&quot;PAR &quot;</span>, </span>
<span id="cb84-19"><a href="lrc_fit.html#cb84-19" aria-hidden="true" tabindex="-1"></a>           <span class="st">&quot;(&quot;</span>, mu, mol<span class="sc">%.%</span>m<span class="sc">^-</span><span class="dv">2</span><span class="sc">%.%</span>s<span class="sc">^-</span><span class="dv">1</span>, <span class="st">&quot;)&quot;</span>)))</span>
<span id="cb84-20"><a href="lrc_fit.html#cb84-20" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb84-21"><a href="lrc_fit.html#cb84-21" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb84-22"><a href="lrc_fit.html#cb84-22" aria-hidden="true" tabindex="-1"></a><span class="co"># 自定义坐标轴</span></span>
<span id="cb84-23"><a href="lrc_fit.html#cb84-23" aria-hidden="true" tabindex="-1"></a>p1 <span class="sc">+</span> <span class="fu">scale_x_continuous</span>(<span class="at">breaks =</span> <span class="fu">seq</span>(<span class="dv">0</span>, <span class="dv">2100</span>, <span class="at">by =</span> <span class="dv">200</span>)) <span class="sc">+</span>  </span>
<span id="cb84-24"><a href="lrc_fit.html#cb84-24" aria-hidden="true" tabindex="-1"></a>  <span class="fu">scale_y_continuous</span>(<span class="at">breaks=</span> <span class="fu">round</span>(light<span class="sc">$</span>lrc_A)) <span class="sc">+</span></span>
<span id="cb84-25"><a href="lrc_fit.html#cb84-25" aria-hidden="true" tabindex="-1"></a>   <span class="fu">theme</span>(<span class="at">axis.text.x  =</span> <span class="fu">element_text</span>(</span>
<span id="cb84-26"><a href="lrc_fit.html#cb84-26" aria-hidden="true" tabindex="-1"></a>    <span class="at">size =</span> <span class="dv">10</span>, <span class="at">angle=</span><span class="dv">30</span>, <span class="at">vjust=</span><span class="fl">0.5</span>), </span>
<span id="cb84-27"><a href="lrc_fit.html#cb84-27" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.text.y =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">10</span>),</span>
<span id="cb84-28"><a href="lrc_fit.html#cb84-28" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.title.x =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">12</span>, <span class="at">face =</span> <span class="st">&#39;bold&#39;</span>),</span>
<span id="cb84-29"><a href="lrc_fit.html#cb84-29" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.title.y =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">12</span>, <span class="at">face =</span> <span class="st">&#39;bold&#39;</span>)</span>
<span id="cb84-30"><a href="lrc_fit.html#cb84-30" aria-hidden="true" tabindex="-1"></a>  )</span></code></pre></div>
<div class="figure"><span style="display:block;" id="fig:nexpr"></span>
<img src="bookdown_files/figure-html/nexpr-1.png" alt="指数模型拟合" width="672" />
<p class="caption">
图 8.3: 指数模型拟合
</p>
</div>
<table>
<caption><span id="tab:nexptable">表 8.3: </span>指数模型计算参数</caption>
<thead>
<tr class="header">
<th align="left"></th>
<th align="right">Estimate</th>
<th align="right">Std. Error</th>
<th align="right">t value</th>
<th align="right">Pr(&gt;|t|)</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td align="left">Am</td>
<td align="right">13.6547568</td>
<td align="right">0.1723363</td>
<td align="right">79.233185</td>
<td align="right">0.0000000</td>
</tr>
<tr class="even">
<td align="left">Ic</td>
<td align="right">-0.5133438</td>
<td align="right">2.3370250</td>
<td align="right">-0.219657</td>
<td align="right">0.8305573</td>
</tr>
<tr class="odd">
<td align="left">b</td>
<td align="right">0.0041183</td>
<td align="right">0.0002012</td>
<td align="right">20.467032</td>
<td align="right">0.0000000</td>
</tr>
</tbody>
</table>
<p>最终的数据拟结果如图 <a href="lrc_fit.html#fig:nexpr">8.3</a> 所示，拟合的参数及结果见表 <a href="lrc_fit.html#tab:nexptable">8.3</a>。</p>

</div>
</div>
<div id="rev_rec" class="section level2" number="8.4">
<h2><span class="header-section-number">8.4</span> 直角双曲线的修正模型</h2>
<p><span class="citation">ZiPiao (<a href="#ref-YEZiPiao2010" role="doc-biblioref">2010</a>)</span> 直角双曲线修正模型的表达式如式 <a href="lrc_fit.html#eq:mrec">(8.5)</a> 所示：</p>
<p><span class="math display" id="eq:mrec">\[\begin{equation}
P_{n} = \alpha \frac{1-\beta I}{1+\gamma I} I - R_{d}
\tag{8.5}
\end{equation}\]</span></p>
<p>其中，<span class="math inline">\(\beta\)</span> 和 <span class="math inline">\(\gamma\)</span> 为系数，<span class="math inline">\(\beta\)</span>光抑制项，<span class="math inline">\(\gamma\)</span>光饱和项，单位为
<span class="math inline">\(m^{2}\cdot s\cdot\mu mol^{-1}\)</span>，其他参数与上文相同，因为该式 <a href="lrc_fit.html#eq:mrec">(8.5)</a>
存在极值，因此，必然存在饱和光强和最大净光合速率，分别用式 <a href="lrc_fit.html#eq:isat">(8.6)</a> 和式 <a href="lrc_fit.html#eq:ic">(8.7)</a> 求得。</p>
<p><span class="math display" id="eq:isat">\[\begin{equation}
I_{sat} = \frac{\sqrt{\frac{(\beta+\gamma)}{\beta}} - 1}{\gamma}
\tag{8.6}
\end{equation}\]</span></p>
<p><span class="math display" id="eq:ic">\[\begin{equation}
P_{nmax} = \alpha\left(\frac{\sqrt{\beta+\gamma}-\sqrt{\beta}}{\gamma}\right)^{2}-R_{d}
\tag{8.7}
\end{equation}\]</span></p>
<p>该模型的优点为拟合结果中光饱和点和最大净光合速率均接近实测值，还可以拟合饱和光强之后光合速率随光强下降段的曲线。</p>
<div id="rev_rec_exam" class="section level3" number="8.4.1">
<h3><span class="header-section-number">8.4.1</span> 直角双曲线修正模型的实现</h3>
<div class="sourceCode" id="cb85"><pre class="sourceCode r"><code class="sourceCode r"><span id="cb85-1"><a href="lrc_fit.html#cb85-1" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(minpack.lm)</span>
<span id="cb85-2"><a href="lrc_fit.html#cb85-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-3"><a href="lrc_fit.html#cb85-3" aria-hidden="true" tabindex="-1"></a><span class="co"># 读取数据，同fitaci数据格式</span></span>
<span id="cb85-4"><a href="lrc_fit.html#cb85-4" aria-hidden="true" tabindex="-1"></a>lrc <span class="ot">&lt;-</span> <span class="fu">read.csv</span>(<span class="st">&quot;./data/lrc.csv&quot;</span>)</span>
<span id="cb85-5"><a href="lrc_fit.html#cb85-5" aria-hidden="true" tabindex="-1"></a>lrc <span class="ot">&lt;-</span> <span class="fu">subset</span>(lrc, Obs <span class="sc">&gt;</span> <span class="dv">0</span>)</span>
<span id="cb85-6"><a href="lrc_fit.html#cb85-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-7"><a href="lrc_fit.html#cb85-7" aria-hidden="true" tabindex="-1"></a><span class="co"># 光响应曲线没有太多参数，</span></span>
<span id="cb85-8"><a href="lrc_fit.html#cb85-8" aria-hidden="true" tabindex="-1"></a><span class="co"># 直接调出相应的光强和光合速率</span></span>
<span id="cb85-9"><a href="lrc_fit.html#cb85-9" aria-hidden="true" tabindex="-1"></a><span class="co"># 方便后面调用</span></span>
<span id="cb85-10"><a href="lrc_fit.html#cb85-10" aria-hidden="true" tabindex="-1"></a>lrc_Q <span class="ot">&lt;-</span> lrc<span class="sc">$</span>PARi</span>
<span id="cb85-11"><a href="lrc_fit.html#cb85-11" aria-hidden="true" tabindex="-1"></a>lrc_A <span class="ot">&lt;-</span> lrc<span class="sc">$</span>Photo </span>
<span id="cb85-12"><a href="lrc_fit.html#cb85-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-13"><a href="lrc_fit.html#cb85-13" aria-hidden="true" tabindex="-1"></a><span class="co"># 模型的拟合</span></span>
<span id="cb85-14"><a href="lrc_fit.html#cb85-14" aria-hidden="true" tabindex="-1"></a>lrcnls <span class="ot">&lt;-</span> <span class="fu">nlsLM</span>(lrc_A <span class="sc">~</span> alpha <span class="sc">*</span> ((<span class="dv">1</span> <span class="sc">-</span> </span>
<span id="cb85-15"><a href="lrc_fit.html#cb85-15" aria-hidden="true" tabindex="-1"></a>              beta<span class="sc">*</span>lrc_Q)<span class="sc">/</span>(<span class="dv">1</span> <span class="sc">+</span> gamma <span class="sc">*</span> lrc_Q)) <span class="sc">*</span> lrc_Q <span class="sc">-</span> Rd,</span>
<span id="cb85-16"><a href="lrc_fit.html#cb85-16" aria-hidden="true" tabindex="-1"></a>                <span class="at">start=</span><span class="fu">list</span>(<span class="at">alpha =</span> <span class="fl">0.07</span>, <span class="at">beta =</span> <span class="fl">0.00005</span>,</span>
<span id="cb85-17"><a href="lrc_fit.html#cb85-17" aria-hidden="true" tabindex="-1"></a>                           <span class="at">gamma=</span><span class="fl">0.004</span>, <span class="at">Rd =</span> <span class="fl">0.2</span>)</span>
<span id="cb85-18"><a href="lrc_fit.html#cb85-18" aria-hidden="true" tabindex="-1"></a>                )</span>
<span id="cb85-19"><a href="lrc_fit.html#cb85-19" aria-hidden="true" tabindex="-1"></a>fitlrc_mrec <span class="ot">&lt;-</span> <span class="fu">summary</span>(lrcnls)</span>
<span id="cb85-20"><a href="lrc_fit.html#cb85-20" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-21"><a href="lrc_fit.html#cb85-21" aria-hidden="true" tabindex="-1"></a><span class="co"># 饱和点计算</span></span>
<span id="cb85-22"><a href="lrc_fit.html#cb85-22" aria-hidden="true" tabindex="-1"></a>Isat <span class="ot">&lt;-</span>  (<span class="fu">sqrt</span>((fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>] <span class="sc">+</span> fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">3</span>,<span class="dv">1</span>])<span class="sc">/</span></span>
<span id="cb85-23"><a href="lrc_fit.html#cb85-23" aria-hidden="true" tabindex="-1"></a>              fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>]) <span class="sc">-</span><span class="dv">1</span>)<span class="sc">/</span>fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">3</span>,<span class="dv">1</span>]</span>
<span id="cb85-24"><a href="lrc_fit.html#cb85-24" aria-hidden="true" tabindex="-1"></a><span class="co"># 补偿点计算</span></span>
<span id="cb85-25"><a href="lrc_fit.html#cb85-25" aria-hidden="true" tabindex="-1"></a>Ic <span class="ot">&lt;-</span> (</span>
<span id="cb85-26"><a href="lrc_fit.html#cb85-26" aria-hidden="true" tabindex="-1"></a>  <span class="sc">-</span>(fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">3</span>, <span class="dv">1</span>] <span class="sc">*</span> fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">4</span>, <span class="dv">1</span>] <span class="sc">-</span> </span>
<span id="cb85-27"><a href="lrc_fit.html#cb85-27" aria-hidden="true" tabindex="-1"></a>  fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">1</span>, <span class="dv">1</span>]) <span class="sc">-</span> <span class="fu">sqrt</span>((fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">3</span>, <span class="dv">1</span>] <span class="sc">*</span> </span>
<span id="cb85-28"><a href="lrc_fit.html#cb85-28" aria-hidden="true" tabindex="-1"></a>  fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">4</span>, <span class="dv">1</span>] <span class="sc">-</span> fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">1</span>, <span class="dv">1</span>])<span class="sc">^</span><span class="dv">2</span><span class="sc">-</span> </span>
<span id="cb85-29"><a href="lrc_fit.html#cb85-29" aria-hidden="true" tabindex="-1"></a>  (<span class="dv">4</span> <span class="sc">*</span> fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">1</span>, <span class="dv">1</span>] <span class="sc">*</span> fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">2</span>, <span class="dv">1</span>] <span class="sc">*</span> </span>
<span id="cb85-30"><a href="lrc_fit.html#cb85-30" aria-hidden="true" tabindex="-1"></a>  fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">4</span>, <span class="dv">1</span>])))<span class="sc">/</span></span>
<span id="cb85-31"><a href="lrc_fit.html#cb85-31" aria-hidden="true" tabindex="-1"></a>  (<span class="dv">2</span><span class="sc">*</span>fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">1</span>,<span class="dv">1</span>]<span class="sc">*</span>fitlrc_mrec<span class="sc">$</span>coef[<span class="dv">2</span>,<span class="dv">1</span>])</span>
<span id="cb85-32"><a href="lrc_fit.html#cb85-32" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-33"><a href="lrc_fit.html#cb85-33" aria-hidden="true" tabindex="-1"></a><span class="do">## 拟合图形</span></span>
<span id="cb85-34"><a href="lrc_fit.html#cb85-34" aria-hidden="true" tabindex="-1"></a><span class="fu">library</span>(ggplot2)</span>
<span id="cb85-35"><a href="lrc_fit.html#cb85-35" aria-hidden="true" tabindex="-1"></a>light <span class="ot">&lt;-</span> <span class="fu">data.frame</span>(<span class="at">lrc_Q =</span> lrc<span class="sc">$</span>PARi, <span class="at">lrc_A =</span> lrc<span class="sc">$</span>Photo)</span>
<span id="cb85-36"><a href="lrc_fit.html#cb85-36" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-37"><a href="lrc_fit.html#cb85-37" aria-hidden="true" tabindex="-1"></a>p <span class="ot">&lt;-</span> <span class="fu">ggplot</span>(light, <span class="fu">aes</span>(<span class="at">x =</span> lrc_Q, <span class="at">y =</span> lrc_A))</span>
<span id="cb85-38"><a href="lrc_fit.html#cb85-38" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-39"><a href="lrc_fit.html#cb85-39" aria-hidden="true" tabindex="-1"></a>p1 <span class="ot">&lt;-</span> p <span class="sc">+</span> </span>
<span id="cb85-40"><a href="lrc_fit.html#cb85-40" aria-hidden="true" tabindex="-1"></a>  <span class="fu">geom_point</span>(<span class="at">shape =</span> <span class="dv">16</span>, <span class="at">size =</span> <span class="dv">3</span>, <span class="at">color =</span> <span class="st">&quot;green&quot;</span>) <span class="sc">+</span> </span>
<span id="cb85-41"><a href="lrc_fit.html#cb85-41" aria-hidden="true" tabindex="-1"></a>  <span class="fu">geom_smooth</span>(<span class="at">method=</span><span class="st">&quot;nls&quot;</span>, <span class="at">formula =</span> </span>
<span id="cb85-42"><a href="lrc_fit.html#cb85-42" aria-hidden="true" tabindex="-1"></a>   y <span class="sc">~</span> alpha <span class="sc">*</span> ((<span class="dv">1</span> <span class="sc">-</span> </span>
<span id="cb85-43"><a href="lrc_fit.html#cb85-43" aria-hidden="true" tabindex="-1"></a>              beta<span class="sc">*</span>x)<span class="sc">/</span>(<span class="dv">1</span> <span class="sc">+</span> gamma <span class="sc">*</span> x)) <span class="sc">*</span> x <span class="sc">-</span> Rd, </span>
<span id="cb85-44"><a href="lrc_fit.html#cb85-44" aria-hidden="true" tabindex="-1"></a>    <span class="at">se =</span> <span class="cn">FALSE</span>, <span class="at">method.args =</span> <span class="fu">list</span>(</span>
<span id="cb85-45"><a href="lrc_fit.html#cb85-45" aria-hidden="true" tabindex="-1"></a>    <span class="at">start =</span> <span class="fu">c</span>(<span class="at">alpha =</span> <span class="fl">0.07</span>, <span class="at">beta =</span> <span class="fl">0.00005</span>,</span>
<span id="cb85-46"><a href="lrc_fit.html#cb85-46" aria-hidden="true" tabindex="-1"></a>              <span class="at">gamma=</span><span class="fl">0.004</span>, <span class="at">Rd =</span> <span class="fl">0.2</span>), </span>
<span id="cb85-47"><a href="lrc_fit.html#cb85-47" aria-hidden="true" tabindex="-1"></a>    <span class="fu">aes</span>(<span class="at">x =</span>lrc_Q, <span class="at">y =</span> lrc_A, </span>
<span id="cb85-48"><a href="lrc_fit.html#cb85-48" aria-hidden="true" tabindex="-1"></a>    <span class="at">color=</span><span class="st">&#39;blue&#39;</span>, <span class="at">size =</span> <span class="fl">1.2</span>))</span>
<span id="cb85-49"><a href="lrc_fit.html#cb85-49" aria-hidden="true" tabindex="-1"></a>  ) <span class="sc">+</span></span>
<span id="cb85-50"><a href="lrc_fit.html#cb85-50" aria-hidden="true" tabindex="-1"></a>  <span class="fu">labs</span>(<span class="at">y=</span><span class="fu">expression</span>(<span class="fu">paste</span>(<span class="st">&quot;photosynthetic rate  &quot;</span>, </span>
<span id="cb85-51"><a href="lrc_fit.html#cb85-51" aria-hidden="true" tabindex="-1"></a>          <span class="st">&quot;(&quot;</span>, mu, mol<span class="sc">%.%</span>m<span class="sc">^-</span><span class="dv">2</span><span class="sc">%.%</span>s<span class="sc">^-</span><span class="dv">1</span>, <span class="st">&quot;)&quot;</span>)), </span>
<span id="cb85-52"><a href="lrc_fit.html#cb85-52" aria-hidden="true" tabindex="-1"></a>       <span class="at">x=</span><span class="fu">expression</span>(<span class="fu">paste</span>(<span class="st">&quot;PAR &quot;</span>, </span>
<span id="cb85-53"><a href="lrc_fit.html#cb85-53" aria-hidden="true" tabindex="-1"></a>           <span class="st">&quot;(&quot;</span>, mu, mol<span class="sc">%.%</span>m<span class="sc">^-</span><span class="dv">2</span><span class="sc">%.%</span>s<span class="sc">^-</span><span class="dv">1</span>, <span class="st">&quot;)&quot;</span>)))</span>
<span id="cb85-54"><a href="lrc_fit.html#cb85-54" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-55"><a href="lrc_fit.html#cb85-55" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb85-56"><a href="lrc_fit.html#cb85-56" aria-hidden="true" tabindex="-1"></a><span class="co"># 自定义坐标轴</span></span>
<span id="cb85-57"><a href="lrc_fit.html#cb85-57" aria-hidden="true" tabindex="-1"></a>p1 <span class="sc">+</span> <span class="fu">scale_x_continuous</span>(<span class="at">breaks =</span> <span class="fu">seq</span>(<span class="dv">0</span>, <span class="dv">2100</span>, <span class="at">by =</span> <span class="dv">200</span>)) <span class="sc">+</span>  </span>
<span id="cb85-58"><a href="lrc_fit.html#cb85-58" aria-hidden="true" tabindex="-1"></a>  <span class="fu">scale_y_continuous</span>(<span class="at">breaks=</span> <span class="fu">round</span>(light<span class="sc">$</span>lrc_A)) <span class="sc">+</span></span>
<span id="cb85-59"><a href="lrc_fit.html#cb85-59" aria-hidden="true" tabindex="-1"></a>   <span class="fu">theme</span>(<span class="at">axis.text.x  =</span> <span class="fu">element_text</span>(</span>
<span id="cb85-60"><a href="lrc_fit.html#cb85-60" aria-hidden="true" tabindex="-1"></a>    <span class="at">size =</span> <span class="dv">10</span>, <span class="at">angle=</span><span class="dv">30</span>, <span class="at">vjust=</span><span class="fl">0.5</span>), </span>
<span id="cb85-61"><a href="lrc_fit.html#cb85-61" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.text.y =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">10</span>),</span>
<span id="cb85-62"><a href="lrc_fit.html#cb85-62" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.title.x =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">12</span>, <span class="at">face =</span> <span class="st">&#39;bold&#39;</span>),</span>
<span id="cb85-63"><a href="lrc_fit.html#cb85-63" aria-hidden="true" tabindex="-1"></a>    <span class="at">axis.title.y =</span> <span class="fu">element_text</span>(<span class="at">size =</span> <span class="dv">12</span>, <span class="at">face =</span> <span class="st">&#39;bold&#39;</span>)</span>
<span id="cb85-64"><a href="lrc_fit.html#cb85-64" aria-hidden="true" tabindex="-1"></a>  )</span></code></pre></div>
<div class="figure"><span style="display:block;" id="fig:mrecr"></span>
<img src="bookdown_files/figure-html/mrecr-1.png" alt="直角双曲线修正模型拟合" width="672" />
<p class="caption">
图 8.4: 直角双曲线修正模型拟合
</p>
</div>
<table>
<caption><span id="tab:mrectable">表 8.4: </span>直角双曲线修正模型计算参数</caption>
<thead>
<tr class="header">
<th align="left"></th>
<th align="right">Estimate</th>
<th align="right">Std. Error</th>
<th align="right">t value</th>
<th align="right">Pr(&gt;|t|)</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td align="left">alpha</td>
<td align="right">0.0730858</td>
<td align="right">0.0021209</td>
<td align="right">34.460183</td>
<td align="right">0.0000000</td>
</tr>
<tr class="even">
<td align="left">beta</td>
<td align="right">0.0000501</td>
<td align="right">0.0000133</td>
<td align="right">3.776115</td>
<td align="right">0.0043751</td>
</tr>
<tr class="odd">
<td align="left">gamma</td>
<td align="right">0.0040622</td>
<td align="right">0.0001955</td>
<td align="right">20.773916</td>
<td align="right">0.0000000</td>
</tr>
<tr class="even">
<td align="left">Rd</td>
<td align="right">0.2156186</td>
<td align="right">0.0543505</td>
<td align="right">3.967190</td>
<td align="right">0.0032685</td>
</tr>
</tbody>
</table>
<p>尽管修正模型可以方便的计算饱和点和补偿点，但如同 <span class="citation">Lobo et al. (<a href="#ref-Lobo2013Fitting" role="doc-biblioref">2013</a>)</span> 所指出，双曲线模型对其结果的计算常有超出生态学意义范围的值<a href="references.html#fn13" class="footnote-ref" id="fnref13"><sup>13</sup></a>，因此对模型的选择不能一概而论，需根据实际情况而选择。</p>

</div>
</div>
</div>
<h3>参考文献</h3>
<div id="refs" class="references csl-bib-body hanging-indent">
<div id="ref-BalyEC1935" class="csl-entry">
Baly, EC. 1935. <span>“The Kinetics of Photosynthesis.”</span> <em>Proceedings of the Royal Society of London Series B (Biological Sciences)</em>, no. 117: 218–39.
</div>
<div id="ref-HuangHY2009" class="csl-entry">
Huang, HY, XY Dou, PY Sun, B Deng, GJ Wu, and CL Peng. 2009. <span>“Comparison of Photosynthetic Characteristics in Two Ecotypes of Jatropha Curcas in Summer.”</span> <em>Acta Ecologica Sinica</em>, no. 29: 2861–67.
</div>
<div id="ref-Lobo2013Fitting" class="csl-entry">
Lobo, F. De A., M. P. De Barros, H. J. Dalmagro, Â. C. Dalmolin, W. E. Pereira, É. C. de Souza, G. L. Vourlitis, and C. E. Rodríguez Ortíz. 2013. <span>“Fitting Net Photosynthetic Light-Response Curves with Microsoft Excel a Critical Look at the Models.”</span> <em>Photosynthetica</em> 51 (3): 445–56.
</div>
<div id="ref-Prado1997Photosynthetic" class="csl-entry">
Prado, C. H., and J. A. P. V. De Moraes. 1997. <span>“Photosynthetic Capacity and Specific Leaf Mass in Twenty Woody Species of Cerrado Vegetation Under Field Conditions.”</span> <em>Photosynthetica</em> 33 (1): 103–12.
</div>
<div id="ref-Thornley1976" class="csl-entry">
Thornley, J H M. 1976. <span>“Mathematical Models in Plant Physiology.”</span> <em>London: Academic Press</em>.
</div>
<div id="ref-ZhangXS2009" class="csl-entry">
Zhang, XS, SH Shen, and J Song. 2009. <span>“The Vertical Distribution of Cotton Leaf Nitrogen Content and Photosynthetic Characteristics in the North China Plain.”</span> <em>Acta Ecologica Sinica</em>, no. 29: 1893–98.
</div>
<div id="ref-YEZiPiao2010" class="csl-entry">
ZiPiao, YE. 2010. <span>“A Review on Modeling of Responses of Photosynthesis to Light and <span class="math inline">\(CO_2\)</span>.”</span> <em>Chinese Journal of Plant Ecology</em>, no. 06.
</div>
</div>
            </section>

          </div>
        </div>
      </div>
<a href="rhtovpd.html" class="navigation navigation-prev " aria-label="Previous page"><i class="fa fa-angle-left"></i></a>
<a href="start_con.html" class="navigation navigation-next " aria-label="Next page"><i class="fa fa-angle-right"></i></a>
    </div>
  </div>
<script src="libs/gitbook-2.6.7/js/app.min.js"></script>
<script src="libs/gitbook-2.6.7/js/clipboard.min.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-search.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-sharing.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-fontsettings.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-bookdown.js"></script>
<script src="libs/gitbook-2.6.7/js/jquery.highlight.js"></script>
<script src="libs/gitbook-2.6.7/js/plugin-clipboard.js"></script>
<script>
gitbook.require(["gitbook"], function(gitbook) {
gitbook.start({
"sharing": {
"github": true,
"facebook": false,
"twitter": true,
"linkedin": false,
"weibo": false,
"instapaper": false,
"vk": false,
"whatsapp": false,
"all": ["facebook", "twitter", "linkedin", "weibo", "instapaper"]
},
"fontsettings": {
"theme": "white",
"family": "sans",
"size": 2
},
"edit": {
"link": "https://github.com/zhujiedong/photoanalysis/blob/master/07-rec.Rmd",
"text": "编辑"
},
"history": {
"link": null,
"text": null
},
"view": {
"link": null,
"text": null
},
"download": ["bookdown.pdf"],
"search": {
"engine": "fuse",
"options": null
},
"toc": {
"collapse": "section"
}
});
});
</script>

<!-- dynamically load mathjax for compatibility with self-contained -->
<script>
  (function () {
    var script = document.createElement("script");
    script.type = "text/javascript";
    var src = "true";
    if (src === "" || src === "true") src = "https://mathjax.rstudio.com/latest/MathJax.js?config=TeX-MML-AM_CHTML";
    if (location.protocol !== "file:")
      if (/^https?:/.test(src))
        src = src.replace(/^https?:/, '');
    script.src = src;
    document.getElementsByTagName("head")[0].appendChild(script);
  })();
</script>
</body>

</html>
